Sljedeći dio Prethodni dio Sadržaj

9. Često susretane poruke o grešci.

9.1 Modprobe ne može naći modul ``XXX'' i slične poruke.

Ovakve se poruke uglavnom pojavljuju pri dizanju ili gašenju sustava. Ako se modprobe, insmod ili rmmod žale o nemogućnosti pronalaženja modula, datoteci /etc/modules.conf ili /etc/modutils/aliases, koju već imate, dodajte slijedeće.

alias <ime-modula> off
I koristite ime modula koje se pojavljuje u poruci o grešci.

[J.H.M. Dassen]

9.2 Unknown terminal type linux i slično.

U ranim 1.3.x kernelima predodređeni tip terminala za konzolu se promijenio iz console u linux. Morate editirati /etc/termcap i promijeniti red

console|con80x25:\
u
linux|console|con80x25:\
(Tu će možda biti i dodatni dumb -- ako je tako, izbrišite ga.)

Kako bi editor proradio možda ćete morati napisati

TERM=console
(u bashu ili kshu) odnosno
setenv TERM console
(csh, tcsh).

Neki programi umjesto /etc/termcap koriste /usr/lib/terminfo. Za takve programe nadogradite terminfo, koji je dio ncursesa.

9.3 lp1 on fire

To je šala/tradicionalna poruka koja pokazuje kako je vaš tiskač prijavio nekakvu grešku, ali ta greška nije valjana. To je možda zbog nekakvog I/O ili IRQ konflikta -- provjerite kako je vaša kartica namještena. Neki ljudi kažu da ovu poruku dobiju kad im je tiskač ugašen. Valjda nije stvarno zapaljen...

U novijim kernelima ta poruka izgleda kao lp1 reported invalid error status (on fire, eh?).

9.4 INET: Warning: old style ioctl... called!

Pokušavate koristiti stare alate za namještanje mreže. Novi se mogu naći na ftp://ftp.linux.org.uk/pub/linux/Networking/PROGRAMS/NetTools/ (samo izvorni kod, bojim se).

Primjetite da ih se ne može koristiti potpuno isto kao i stare. Za upute o točnom postavljanju starih mrežnih programa pogledajte NET-2 HOWTO. Još bolje, pogledajte NET-3 HOWTO i nadogradite svoj mrežni softver.

9.5 ld: unrecognized option '-m486'

Imate staru verziju lda. Instalirajte noviji binutils -- on sadrži svježiji ld. Na ftp://tsx-11.mit.edu/pub/linux/packages/GCC/ potražite binutils-2.6.0.2.bin.tar.gz.

9.6 GCC kaže Internal compiler error

Ako se greška ponavlja (tj. uvijek događa na istom mjestu u istoj datoteci -- čak i nakon što ste ponovno digli sustav, na stabilnom kernelu) otkrili ste grešku u GCC-u. Za detalje o prijavljivanju greške pogledajte Info dokumentaciju GCC-a (u Emacsu napišite C-i i, pa u izborniku izaberite GCC) -- prije toga provjerite da li imate najnoviju verziju.

To vjerojatno nije problem specifičan za Linux. Ako niste kompajlirali program koji kompajliraju i mnogi drugi korisnici Linuxa, poruke o grešci nemojte slati u comp.os.linux grupe.

Ako se problem ne može ponoviti, možda imate greške u memoriji -- pogledajte make kaže Error 139.

9.7 make kaže Error 139

Vaš je kompajler (gcc) izbacio core. Vjerojatno imate pokvarenu, pogrešnu ili staru verziju GCC-a -- nabavite najnovije izdanje. Moguće je i da vam je ponestalo swapa -- za više informacija pogledajte pitanje Stroj mi postane jako spor ako pokrenem GCC/X/....

Ako to ne sredi problem, vjerojatno se pojavljuju greške u memoriji ili na disku. Provjerite da li su takt, wait stanja i vrijeme osvježavanja za vaše SIMM-ove i keš točni (i hardverski priručnici ponekad nisu u pravu). Ako je tako, imate neke čudne SIMM-ove ili nepouzdanu matičnu ploču ili tvrdi disk ili kontroler.

Linux je, kao i svaki drugi Unix, odličan za testiranje memorije -- puno bolji od programa iste svrhe pod MS-DOS-om.

Čuo sam da neki klonovi x87 koprocesora mogu uzrokovati probleme. Probajte kompajlirati kernel s emulacijom koprocesora (pitanje Kako nadograditi/ponovo kompajlirati kernel?); možda ćete morati na LILO promptu navesti opciju no387 kako bi prisilili kernel da koristi emulaciju ili će možda raditi i koristiti '387, s uključenom, ali uglavnom nekorištenom matematičkom emulacijom.

Više informacija o ovom problemu nalazi se na WWW-u na http://einstein.et.tudelft.nl/~wolff/sig11/.

9.8 shell-init: permission denied kad se logiram.

Vaš root direktorij i svi direktoriji do vašeg home direktorija moraju imati dozvole za čitanje i izvršavanje sviju. O rješavanju tog problema pogledajte man stranicu chmoda ili neku knjigu o Unixu.

9.9 No utmp entry. You must exec... kad se logiram.

Zeznut vam je /var/run/utmp. U svom /etc/rc.local odnosno /etc/rc.d/* morate imati

> /var/run/utmp
Pogledajte pitanje Zeznuo sam sustav i ne mogu se logirati da to sredim.. Na nekim starijim sustavima utmp također može biti u /var/adm/ ili /etc/.

9.10 Warning -- bdflush not running.

Moderni kerneli koriste bolju strategiju pisanja keširanih blokova na disk. Uz promjene u kernelu, to uključuje zamjenu starog programa update koji je sve pisao otprilike svakih 30 sekundi s osjetljivijim demonom (zapravo parom demona), poznatim kao bdflush.

Nabavite bdflush-n.n.tar.gz s istog mjesta kao i izvorni kod kernela (pitanje Kako nadograditi/ponovo kompajlirati kernel?), kompajlirajte ga i instalirajte. Trebao bi se pokretati prije uobičajenih provjera datotečnih sustava. Dobro će raditi i uz starije kernele, pa nema potrebe zadržavati stari update.

9.11 Warning: obsolete routing request made.

O ovom se ne morate brinuti. Poruka znači da je vaša verzija routea malo zastarjela u odnosu na kernel. Poruka će nestati ako nabavite novu verziju routea s mjesta odakle ste nabavili izvorni kod kernela (pitanje Kako nadograditi/ponovo kompajlirati kernel?).

9.12 EXT2-fs warning: mounting unchecked filesystem.

Pokrenite e2fsck (odnosno fsck -t ext2 ako imate fsck sučelje) uz opciju -a kako bi maknuo dirty oznaku, a zatim čisto demontirati particiju tokom svakog gašenja sustava.

Najlakši način da to napravite je nabaviti najnoviji fsck, umount i shutdown iz paketa util-linux Rika Faitha (pitanje Gdje da FTP-om nabavim Linux materijale?). Provjerite da li ih vaše /etc/rc*/ skripte točno kioriste.

Napomena: ne pokušavajte provjeriti datotečni sustav koji je montiran za pisanje -- to vrijedi i za root particiju ako niste vidjeli

VFS: mounted root ... read-only
pri dizanju sustava. Stvari trebaju biti postavljene tako da se root datotečni sustav prvo montira samo za čitanje, provjerava ako je potrebnno, a zatim ponovno montira za čitanje i pisanje. Više o tome pročitajte u dokumentaciji util-linuxa.

Primjetite da mountu trebate dati opciju -n da ne bi pokušao osvježiti /etc/mtab jer se root datotečni sustav još uvijek može samo čitati -- inače mount ne bi radio.

9.13 EXT2-fs warning: maximal count reached.

To je poruka kernela kod montiranja datotečnog sustava koji je označen kao čist, ali je ``broj montiranja od zadnje provjere'' dosegao određenu vrijednost. Rješenje je nabavljanje najnovije verzije ext2fs alata (e2fsprogs-0.5b.tar.gz u vrijeme pisanja) s uobičajenih mjesta (pitanje Gdje da FTP-om nabavim Linux materijale?).

Maksimalni broj montiranja može se pregledati i promijeniti pomoću programa tune2fs iz tog paketa.

9.14 EXT2-fs warning: checktime reached.

Kernel od verzije 1.0 podržava provjeravanje datotečnog sustava na osnovu proteklog vremena od zadnje provjere kao i broja montiranja. Nabavite najnoviju verziju ext2fs alata (pogledajte EXT2-fs warning: maximal count reached.).

9.15 df kaže Cannot read table of mounted filesystems.

Vjerojatno je nešto pogrešno u vašoj /etc/mtab ili /etc/fstab datoteci. Ako imate noviju verziju mounta, /etc/mtab bi se pri dizanju trebao isprazniti ili izbrisati (u /etc/rc.local odnosno /etc/rc.d/*) s nečim poput

rm -f /etc/mtab*

Kod nekih verzije SLS-a u /etc/rc* se pomoću rdeva o root particiji stvara zapis u /etc/mtab. To je nepravilno -- novije verzije mounta rade to automatski.

Neke druge verzije SLS-a imaju red u /etc/fstab koji izgleda ovako:

/dev/sdb1   /root   ext2   defaults
To je krivo. /root bi trebao biti jednostavno /.

9.16 fdisk kaže Partition X has different physical/logical...

Ako je broj particije (X) 1, radi se o istom problemu kao u fdisk: Partition 1 does not start on cylinder boundary

.

Ako particija počinje ili završava na cilindru s brojem većim od 1024, ovo se događa jer se standardni DOS format informacija o geometriji na particijskoj tabeli ne može suočiti s više od 10 bitova. Pogledajte pitanje Kako natjerati Linux da radi s mojim diskom?.

9.17 fdisk: Partition 1 does not start on cylinder boundary

Verzija fdiska koja dolazi s mnogim Linux sustavima stvara particije koje ne mogu proći na vlastitim testovima. Nažalost, ako ste već instalirali svoj sustav ne možete puno poduzeti, osim kopiranja podataka s particije, njenog brisanja i ponovnog stvaranja i kopiranja podataka natrag.

Problem možete izbjeći nabavljanjem najnovije verzije fdiska iz paketa util-linux Rika Faitha (na svim glavnim FTP arhivama). Također, ako vam treba particija 1 koja počinje na prvom cilindru, ovako možete dobiti particiju koja se sviđa fdisku:

Poruku o nezauzetim sektorima zanemarite -- odnose se na sektore prve trake, izuzevši MBR, koji se ne koriste ako prvu particiju započnete u 2. traci.

9.18 fdisk kaže: partition b has an odd number of sectors.

U particioniranju PC diskova koriste se sektori od 512 bajtova, no Linux koristi blokove od 1 KB. Ako imate particiju s neparnim brojem sektora zadnji se sektor ne koristi. Poruku zanemarite.

9.19 mtools kažu cannot initialise drive XYZ

To znači da mtools ne može pristupiti disku. To može biti iz nekoliko razloga.

Često se radi o netočnim dozvolama uređaja disketnog pogona (/dev/fd0* i /dev/fd1*) -- korisnik koji pokreće mtools mora imati odgovarajući pristup. Za detalje pogledajte man stranicu chmoda.

Većina verzija mtoolsa koji se distribuiraju s Linux sustavima (ne standardna GNU verzija) za pronalaženje uređaja i gustoća koriste sadržaj datoteke /etc/mtools, a ne informacije uključene u izvršnu datoteku. Greške u toj datoteci često uzrokuju probleme. O tome često nema dokumentacije.

Za najlakši način pristupanja vašim MS-DOS datotekama (posebno onima na particiji tvrdog diska) pogledajte pitanje Kako pristupiti datotekama na DOS particiji ili disketi?. Napomena -- nikad nemojte koristiti mtools za pristupanje datotekama na već montiranoj particiji ili disketi!

9.20 Na početku dizanja: Memory tight

To znači da imate vrlo velik kernel, pa Linux mora izvoditi neke posebne čarolije u radu s memorijom kako bi se dignuo preko BIOS-a. Nema veze s količinom vaše fizičke memorije. Poruku zanemarite ili napravite kernel koji sadrži samo podršku i mogućnosti koje vam trebaju (pitanje Kako nadograditi/ponovo kompajlirati kernel?).

9.21 syslog mi kaže ``end_request: I/O error, ...''.

Ova i slične poruke skoro uvijek znače hardversku grešku u radu s tvrdim diskom.

To je često simptom defektnog tvrdog diska. Jedini način izbjegavanja daljnjeg gubitka podataka je potpuno gašenje sustava. Zatim morate provjeriti da li podaci na disku imaju rezervne kopije i rezervne kopije vratiti ih na ispravan tvrdi disk.

Ova poruka može značiti i loš spoj s diskom, pogotovo na sustavu kojeg ste sami sastavili. Ako instalirate IDE disk, UVIJEK koristite nove kablove. To je vjerojatno dobro činiti i kod SCSI diskova.

U jednom slučaju ova je greška koincidirala s lošim spojem između matične ploče i kućišta. Prije okrivljavanja samog tvrdog diska provjerite da li su sve električne veze čiste i čvrste.

[Peter Moulder, Theodore T'so]

9.22 You don't exist. Go away.

Ovo nije virusna infekcija :-). Dolazi od programa kao što su write, talk i wall ako UID uz koji ih pokrećete ne odgovara valjanom korisniku (vjerovatno zbog greške u /etc/passwd) ili zbog toga što sesija (točnije pseudoterminal) koju koristite nije pravilno zapisana u datoteci utmp (vjerojatno zbog toga što ste je čudno pokrenuli).


Sljedeći dio Prethodni dio Sadržaj