Pagina 1 di 2

kernel panic: unable to mount root fs

Inviato: lun 22 feb 2010, 22:04
da daniele50
Ciao,
sul pc di mio fratello sto portando la slackware 13 alla current.
Ho aggiornato tutti i pacchetti con slacypkg, ho ticompilato il kernel prendendo il config del huge-smp e dato un lilo -v, ma all'avvio mi da l'errore kernel panic - not syncing: VFS: unable to mount root fs on unknown-block(3,2).
Ho controllato il config che ho usato nel menuconfig e nel file system ci sono Ext2, Ext3 e Ext4 come built-in.
Mi ricordo che dal kernel 2.6.29.x al 2.6.32.x gli hda diventano sda...
E' che se avvio da cd-rom non posso modificare lilo mettendo sda al posta di hda perché (il kernel del cd-rom) vede l'hd come /dev/hda.
A dire il vero non sono sicuro che sia quello ma non so dove altro guardare...

Grazie a chi ci prova...

Re: kernel panic: unable to mount root fs

Inviato: lun 22 feb 2010, 22:17
da SIV
Ragazzi stessissimo problema! Ho aggiornato dalla 13.0 alla current, ma facendo installare a slackpkg il kernel.
Al primo avvio mi dava l'errore simile a daniele:

Codice: Seleziona tutto

No filesystem could mount root, tried: romfs
...
Kernel panic - not syncing: VFS: Unable to mount root fs on unkwnown...
Ho cercato in rete e consigliavano di creare l'initrd. Con un cd di slack sono entrato nella partizione con chroot ed ho dato:

Codice: Seleziona tutto

mkinitrd -c -m jbd:ext3 -f ext3 -r /dev/sda6 -k 'unamer -r'
Il che ha creato : /boot/initrd.gz

Ho modificato lilo a dovere ed ho dato:

Codice: Seleziona tutto

lilo
il quale non ha dato problemi.

Riavvio, ma questa volta il kernel panic mi dice che non trova moduli per il kernel 2.6.32.7!

Riprendo il cd di slack e vedo i pacchetti installati:

Codice: Seleziona tutto

kernel-firmware-2.6.32.7-noarch-1
kernel-generic-2.6.32.7-i486-1
kernel-generic-smp-2.6.32.7_smp-i686-1
kernel-headers-2.6.32.7_smp-x86-1
kernel-huge-2.6.29.6-i486-2
kernel-huge-smp-2.6.29.6_smp-i686-2
kernel-modules-2.6.32.7-i486-1
kernel-modules-smp-2.6.32.7_smp-i686-1
kernel-source-2.6.32.7_smp-noarch-1
Ma i moduli ci sono!

Come fare?


Altre info:

-lilo.conf:

Codice: Seleziona tutto

boot = /dev/sda
append=" vt.default_utf8=0"
lba32
prompt
timeout = 300
vga=791
image = /boot/vmlinuz
  root = /dev/sda6
  initrd = /boot/initrd.gz
  label = Slackware
  read-only  # Partitions should be mounted read-only for checking
 other = /dev/sda2
  label = Vista
  table = /dev/sda
-readlink di vmlinux:

Codice: Seleziona tutto

vmlinuz-generic-smp-2.6.32.7-smp
-listato della directory /boot:

Codice: Seleziona tutto

README.initrd
System.map
System.map-generic-2.6.32.7
System.map-generic-smp-2.6.32.7-smp
System.map-huge-2.6.29.6
System.map-huge-smp-2.6.29.6-smp
boot.0800
boot_message.txt
config
config-generic-2.6.32.7
config-generic-smp-2.6.32.7-smp
config-huge-2.6.29.6
config-huge-smp-2.6.29.6-smp
diag1.img
initrd-tree
initrd.gz
istruzioni
map
slack.bmp
vmlinuz
vmlinuz-generic-2.6.32.7
vmlinuz-generic-smp-2.6.32.7-smp
vmlinuz-huge-2.6.29.6
vmlinuz-huge-smp-2.6.29.6-smp
N.B.
Se infastidisce il doppio problema, apro un altro post!

Re: kernel panic: unable to mount root fs

Inviato: lun 22 feb 2010, 22:26
da Toni
avviato col cdrom/dvd di slackware

andate in chroot:

Codice: Seleziona tutto

#mkdir /temp
#mount -t auto /dev/partizione_root /temp
#chroot /temp
a questo punto editate

/etc/fstab

cambiando hdx in sdx

lasciate invariato lilo.conf

al successo riavvio al prompt di lilo

premete tab ed avviate col nome del kernel e con l'opzione root=/dev/sdxx

a questo punto potete modificare lilo.conf con hdxx-> sdxx

Re: kernel panic: unable to mount root fs

Inviato: lun 22 feb 2010, 22:32
da zoros
aggiungo anch'io qualcosa:

daniele50 non ha postato il suo lilo.conf ...

ma nel suo caso io proverei a togliere (commentando) la voce "root=/dev/qualcosa" (probabilmente hda2)
aggiungendo la voce "root=/dev/sda2" all'interno di "append= ..." ...

cosa simile per SIV se vuole evitare la ramdisk ... a lilo non serve la voce root= e può essere installato sul MBR una volta come sda e un'altra come hda senza che il risultato pratico cambi ...

Re: kernel panic: unable to mount root fs

Inviato: lun 22 feb 2010, 22:36
da daniele50
Grande Toni!
Sei stato veloce, conciso, chiaro e soprattutto risolutivo!
Grazie 1000!!!
:thumbright:

Re: kernel panic: unable to mount root fs

Inviato: lun 22 feb 2010, 23:05
da SIV
Cioè modifico in questo:

Codice: Seleziona tutto

boot = /dev/sda
append=" vt.default_utf8=0"
lba32
prompt
timeout = 300
vga=791
image = /boot/vmlinuz
 initrd=/boot/initrd.gz
 append =  "root=/dev/sda6"
  label = Slackware
  read-only 
?

E non mi dovrebbe dare il problema dei moduli non trovati?

Re: kernel panic: unable to mount root fs

Inviato: lun 22 feb 2010, 23:11
da erio
i moduli mi sa che devi averli in lib ogni compilazione ci mette i suoi.

Re: kernel panic: unable to mount root fs

Inviato: lun 22 feb 2010, 23:44
da zoros
@SIV: mi pare chiedevi a me ... beh, non credo che ti risolva la questione dei moduli non trovati, ma solo il boot ...

anche senza moduli il sistema si avvia comunque con un huge ... quindi, una volta avviato, fai un modprobe di un qualche modulo che sai che esiste ... dovresti scoprire dove il kernel cerca i suoi moduli (in alcuni casi in /kernel) ...

EDIT: pensavo a moduli che dovrebbero esistere (per fare una prova):

Codice: Seleziona tutto

# modprobe display
# modprobe raw

Re: kernel panic: unable to mount root fs

Inviato: lun 22 feb 2010, 23:57
da SIV
zoros, ho provato così:

Codice: Seleziona tutto

append=" vt.default_utf8=0"
image = /boot/vmlinuz
root = /dev/sda6
#senza initrd
  label = Slackware
  read-only 
ed il risultato è questo: http://i46.tinypic.com/2lm70op.jpg

Ho provato allora così:

Codice: Seleziona tutto

append=" vt.default_utf8=0 root=/dev/sda6"
image = /boot/vmlinuz
initrd=/boot/initrd.gz
  label = Slackware
  read-only 
ed il risultato è: http://i49.tinypic.com/2mqu5hx.jpg

Non riesco neanche a farla partire! Ho sbagliato qualcosa con hda/sda? Ho sbagliato a creare l'initrd?

Re: kernel panic: unable to mount root fs

Inviato: mar 23 feb 2010, 0:05
da zoros
beh, nel primo caso sembra un brutto errore nel secondo non trova il device /dev/sda6 quindi sembra mancare il driver per il disco ...

questo frettolosamente ... simpatiche le foto, ci sei anche tu :D

Re: kernel panic: unable to mount root fs

Inviato: mar 23 feb 2010, 0:08
da SIV
Possibili soluzioni? Eppure i pacchetti per i moduli solo installati e l'initrd pure. almeno sperando di non aver sbagliato.

Re: kernel panic: unable to mount root fs

Inviato: mar 23 feb 2010, 0:13
da zoros
io ho proposto più volte di usare una ramdisk pensata per l'huge ... almeno questa ti apre una bash ... qui le versioni a 32 o 64 bit ... non occorre nessun parametro per fare delle prove, basta usarla come initrd=

viewtopic.php?f=1&t=30177&p=259984&hili ... gz#p259984

io provo così, appunto quando (spesso) sbaglio a configurare il kernel :D

EDIT:
mi sono riletto un po' la discussione di cui sopra ... per fare delle prove sull'effettivo funzionamento del kernel un'idea è di usare come initrd la ramdisk del CD/DVD di Slackware ... visto che siamo nella sezione "Slackware" ;)

Re: kernel panic: unable to mount root fs

Inviato: mar 23 feb 2010, 15:29
da SIV
zoros, ho provato con l'immagine ramusb-04.igz, ma dopo non riuscire a montare /dev/sda6 mi riporta alla shell dove comunque dando fdisk -l , riconosce tutti come sda.
Quindi non riesco a capire il problema!

Montando initrd.img del disco di slackware, in fase di boot parte l'intallazione di slack come dal dvd! Quindi inutilizzabile pure quella.

Qualcuno mi sa dire se ho sbagliato a creare l'initrd come scritto nel primo post? :thumbright:

P.s.
Ho messo grub (mi piace di più) ma il problema ovviamente resta. Penso proprio che sbaglio nel creare quel initrd.gz oppure c'è troppo casini tra kernel installati #-o

Re: kernel panic: unable to mount root fs

Inviato: mar 23 feb 2010, 20:00
da erio
se non ricordo male nell'initrd ci vanno anche nel lib i moduli del kernel,è un po una strada ad anello chiuso,nb. non sparate sul pianista, usa un live cd copiati il config system map e vmlinuz in boot di un kernel di cui hai i moduli in lib,se riesci fai un ls della directory linux della compilazione,e forse riparte,salvo imprevisti

Re: kernel panic: unable to mount root fs

Inviato: mar 23 feb 2010, 20:32
da conraid
SIV
spero che il tuo fosse un esempio e basta, perché

Codice: Seleziona tutto

mkinitrd -c -m jbd:ext3 -f ext3 -r /dev/sda6 -k 'unamer -r'
non può darti il risultato sperato in quanto nel momento in cui lo hai lanciato uname era riferito al vecchio kernel, o nel tuo caso a quello presente nel cd/dvd
metti *sempre* la versione del kernel

Codice: Seleziona tutto

mkinitrd -c -m jbd:ext3 -f ext3 -r /dev/sda6 -k 2.6.32.7
o 2.6.32.7-smp a seconda del kernel che usi, vedo che li hai installati entrambi