Sljedeći dio Prethodni dio Sadržaj

6. Rješenja čestih sporednih problema.

6.1 free izbacuje core.

Od Linuxa 1.3.57 format /proc/meminfo se promijenio tako da ga implementacija freea više ne razumije.

Nabavite najnoviju verziju sa sunsite.unc.edu u /pub/Linux/system/Status/ps/procps-0.99.tgz.

6.2 Sat mi je vrlo netočan.

U vašem računalu postoje dva sata. Hardverski (CMOS) sat radi čak i kada je računalo ugašeno i koristi se pri dizanju sustava i u DOS-u (ako ga koristite). Obično vrijeme sustava, koje pokazuje i mijenja date, održava kernel dok Linux radi.

Vrijeme na CMOS satu možete vidjeti ili bilo koji sat namjestiti po onom drugom pomoću programa /sbin/clock -- pogledajte man stranicu za clock(8).

Ima raznih drugih programa koji mogu ispraviti jedan ili oba sata radi protjecanja vremena ili vremena prijenosa preko mreže. Neki od njih možda su već instalirani na vašem sustavu. Potražite adjtimex (ispravlja proticanje), netdate i getdate (jednostavno uzimaju vrijeme s mreže) ili xntp (točan, mrežni demon za vrijeme s mnogim mogućnostima).

6.3 Set-uid skripte ne rade.

Upravo tako. Ta je mogućnost namjerno isključena u Linux kernelu jer su set-uid skripte gotovo uvijek sigurnosna rupa. Sudo i SuidPerl nude više sigurnosti od set-uid skripti ili izvršnih datoteka, pogotovo ako su izvršne dozvole ograničene na nekog korisnika ili grupu.

Ako želite saznati zašto su set-uid skripte sigurnosna rupa, pročitajte comp.unix.questions FAQ.

6.4 Slobodna memorija koju prijavljuje free stalno se smanjuje.

Brojka free koju free ispisuje ne uključuje memoriju koja se koristi kao disk buffer cache -- pokazanu u stupcu buffers. Ako želite znati koliko je memorije stvarno slobodno zbrojite free i buffers -- novije verzije freea za to ispisuju dodatni red.

Disk buffer cache počinje rasti odmah nakon dizanja Linuxa zbog učitavanja sve više programa i korištenja sve više datoteka koje se keširaju. Nakon nekog će se vremena stabilizirati.

6.5 Kada dodam više memorije, sustav se užasno uspori.

To je čest simptom neuspjeha u keširanju dodatne memorije. Točan problem ovisi o vašoj matičnoj ploči.

Nekad morate uključiti keširanje određenih dijelova u svom BIOS setupu. U CMOS setupu potražite opciju za keširanje nove memorije koja je trenutno isključena. Izgleda da je to najčešće na '486.

Ponekad SIMM-ovi moraju biti u određenim utičnicama da bi se keširali.

Ponekad morate podesiti jumpere da bi se uključilo keširanje.

Neke matične ploče ne keširaju sav RAM ako imate više RAM-a u odnosu na keš nego što bi one očekivale. Obično će puni 256 KB keš riješiti takav problem.

Ako dvojite, provjerite priručnik svoje matične ploče. Ako još uvijek ne možete popraviti stvar jer je dokumentacija nedovoljna, pošaljite poruku u comp.os.linux.hardware saa svim detaljima -- proizvođač, broj modela, datum, itd. tako da je drugi korisnici Linuxa izbjegnu.

6.6 Neki programi (tj. xdm) ne daju mi da se logiram.

Vjerojatno koristite ne-shadow programe sa shadow lozinkama.

Ako je tako, morate nabaviti ili kompajlirati shadow verziju programa u pitanju. Programi za rad sa shadow lozinkama mogu se naći na ftp://tsx-11.mit.edu/pub/linux/sources/usr.bin/shadow-*. Tamo je izvorni kod; izvršne datoteke vjerojatno ćete naći u /pub/linux/binaries/usr.bin.

6.7 Neki programi puštaju me da se logiram bez lozinke.

Vjerojatno imate isti problem kao u Neki programi (tj. xdm) ne daju mi da se logiram., uz dodatnu komplikaciju:

Ako koristite shadow lozinke, u polje za lozinku /etc/passwd stavite slovo x ili zvjezdicu za svaki račun, tako da program koji ne zna za shadow lozinke ne misli da je to račun bez lozinke i pušta svakog unutra.

6.8 Stroj mi postane jako spor ako pokrenem GCC/X/...

Možda imate premalo prave memorije. Ako imate manje RAM-a od zbroja svih programa na kojima istovremeno radite, Linux će umjesto njega koristiti tvrdi disk i strašno se usporiti. U tom slučaju, rješenje je ne pokretati toliko stvari odjednom ili kupiti više memorije. Nešto memorije možete dobiti kompajliranjem i korištenjem kernela s manje uključenih opcija. Pogledajte Kako nadograditi/ponovo kompajlirati kernel?.

Koliko memorije i/ili swapa koristite možete saznati naredbom free, ili pomoću

cat /proc/meminfo

Ako vam je kernel konfiguriran s ramdiskom, to je vjerojatno bačen prostor i uzrokovat će usporavanje stvari. Koristite LILO ili rdev kako bi kernelu rekli da ne alocira ramdisk (pogledajte dokumentaciju LILO-a ili man stranicu rdeva).

6.9 Mogu se logirati samo kao root.

Vjerojatno imate nekih problema s dozvolama ili datoteku /etc/nologin.

Ako je riječ o onom drugom, stavite rm -f /etc/nologin u svoje /etc/rc.local ili /etc/rc.d/* skripte.

Inače provjerite dozvole svoje ljuske i bilo kojih datoteka koje se spominju u porukama o grešci, kao i direktorija koji ih sadrže skroz do vrha stabla, uključujući root direktorij.

6.10 Zaslon mi je pun čudnih znakova umjesto slova.

Vjerojatno ste zabunom na konzolu poslali binarne podatke. Sredite to pomoću echo '\033c'. Na mnogim distribucijama Linuxa za to se brine naredba reset.

Ako to ne pomaže, pokušajte s izravnom escape naredbom.

echo <CTRL>-<V><CTRL>-<O>
To će obnoviti font na Linux konzoli. Tipke Ctrl i V pritisnite zajedno, a ne jednu po jednu. Niz
echo <CTRL>-<V><ESC><c>
uzrokuje potpuno obnavljanje zaslona. Ako je na naredbenom retku ljuske ostalo još nešto podataka nakon ispisa binarne datoteke, par puta pritisnite <CTRL>-<C>.

[Bernhard Gabler]

6.11 Zeznuo sam sustav i ne mogu se logirati da to sredim.

Dignite sustav s diskete ili para disketa za hitne slučajeve. Na primjer, Slackwareovog para boot i root disketa u direktoriju install distribucije Slackware.

Također postoje dva sam-svoj-majstor paketa za pripremanje rescue disketa na ftp://sunsite.unc.edu/pub/Linux/system/Recovery/. Oni su bolji jer na njima imate svoj kernel, pa ne riskirate manjak uređaja ili datotečnih sustava.

Uđite u ljusku i montirajte svoj tvrdi disk s nečim poput

> mount -t ext2 /dev/hda1 /mnt
Zatim je vaš datotečni sustav dostupan pod direktorijem /mnt i možete riješiti problem. Nemojte zaboraviti demontirati tvrdi disk prije ponovnog dizanja sustava (prije toga promjenite trenutni direktorij na nešto drugo jer će inače reći da je zauzet).

6.12 Otkrio sam ogromnu sigurnosnu rupu u rm!

Ne, niste. Očito ste novi na Unixu i treba vam dobra knjiga da shvatite kako stvari funkcioniraju. Trag: sposobnost brisanja datoteka pod Unixom ovisi o dozvoli za pisanje u taj direktorij.

6.13 lpr(1) i/ili lpd(8) ne rade.

Prvo provjerite da li je vaš /dev/lp* dobro postavljen. Njegov IRQ (ako ga ima) i port adresa trebaju odgovarati onima na kartici tiskača. Trebali biste moći izbaciti datoteku izravno na tiskač.

cat datoteka >/dev/lp1
Ako vam lpr kaže nešto kao ``mojeime@računalo: host not found'', to može značiti da TCP/IP loopback sučelje, lo, ne radi kako treba. Loopback podrška uključena je u većinu distribuiranih kernela. Provjerite da li se sučelje konfigurira naredbom ifconfig. Po konvencijama s Interneta, broj mreže je 127.0.0.0, a adresa lokalnog računala 127.0.0.1. Ako je sve dobro konfigurirano, trebali bi se moći telnet-ati na svoj stroj i dobiti login:.

Provjerite da li /etc/hosts.lpd sadrži ime računala.

Ako vaš stroj ima lpd svjestan mreže, kao što je onaj koji dolazi s LPRng-om, provjerite da li je datoteka /etc/lpd.perms točno konfigurirana.

Pogledajte i Printing HOWTO (pitanje Gdje da nabavim HOWTO-e i drugu dokumentaciju?).

6.14 Vrijeme na datotekama s MS-DOS particija netočno se postavlja.

Postoji greška u programu clock (često je u /sbin). Krivo računa s vremenskom zonom, zamjenjujući sekunde s minutama ili tako nešto. Nabavite noviju verziju.

6.15 Kako natjerati LILO da digne datoteku vmlinux?

U verziji kernela 1.1.80 i novijima sažeta preslika kernela koju LILO traži premještena je u arch/i386/boot/zImage. Datoteka vmlinux u root direktoriju je nesažeti kernel i nemojte ju pokušavati dignuti.

Ta promjena olakšava kompajliranje verzija za nekoliko različitih procesora iz jednog stabla.


Sljedeći dio Prethodni dio Sadržaj