|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Feb 2006
Messaggi: 45
|
kernel panic quando compilo senza initrd
ciao a tutti
ieri volevo aggiornare il kernel della mia debian sid con il 2.6.16-9. Ho usato i soliti comandi make mrproper, make menuconfig, make clean, make bzImage make modules, make modules-install ed ho copiato vmlinuz in /boot e dato update-grub: al riavvio ho ottenuto il seguente errore: kernel panic non syncing VFS: unale to mount root fs on unknown-block (0,0) VFS cannot open root device HDA3 or unknown-block (0,0) quando ho compilato il kernel ho inserito il supporto statico a tutti i filesystem inoltre ho normali dischi pata percui non mi spiego da dove possa venire l' errore... il vecchio menu.list era: title Debian GNU/Linux, kernel 2.6.15-1-486 root (hd0,2) kernel /boot/vmlinuz-2.6.15-1-486 root=/dev/hda3 ro initrd /boot/initrd.img-2.6.15-1-486 savedefault boot mentre il nuovo: title Debian GNU/Linux, kernel 2.6.16-9 root (hd0,2) kernel /boot/vmlinuz-2.6.16-9 root=/dev/hda3 ro savedefault boot le altre volte non avevo avuto bisogno di creare l' immagine initrd.imgxxx perchè ora se non lo faccio mi da errore? ora ho finito di reinstallare il tutto, e mi ritrovo a dover ricompilare nuovamente il kernel. ho visto la guida di piloz per ricompilare il kernel e la procedura seguita è diversa, usa make-kpkg clean, make-kpkg --initrd kernel_image, dpkg -i nome-kernel.deb. Ho sbagliato a seguire la procedura dando gli altri comandi o sono equivalenti? Cosa cambia con initrd ovvero usando la ram come un disco fisso rispetto al solito vmlinuz, non serve solo per caricare un modulo speciale prima dell' avvio come quando uno ha un disco sata oppure un sistema raid (in questo caso a me non darebbe alcun vantaggio)? è possibile lasciare la vecchia immagine del kernel in/boot e dare update-grub in modo che dal menù posso scegliere sia il nuovo che il vecchio? ringrazio in anticipo chiunque vorrà aiutarmi Ultima modifica di oRz0Ro : 20-04-2006 alle 12:40. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
Probabilmente non hai messo il modulo per il controller ide oppure del filesystem della root come statici. Modifica il file di configurazione oppure usa initrd.
ciao |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Feb 2006
Messaggi: 45
|
ciao
"non hai messo il modulo per il controller ide oppure del filesystem della root come statici" : no ci sono stato attento. "usa initrd": quindi è meglio compilare con make-kpkg clean, make-kpkg --initrd kernel_image, dpkg -i nome-kernel.deb che con make menuconfig, make clean, make bzImage make modules, make modules-install anche se non ho raid o dischi fissi sata??? qual' è il vantaggio di questo metodo con la mia configurazione? |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Feb 2004
Messaggi: 1209
|
La differenza e' che make-kpkg ti serve per creare un pacchetto (quindi lo usi solo in debian, le altre distribuzioni ho hanno un tool diverso o nn ce l'hanno).
Il metodo ke utilizzi tu invece e' la compilazione classica su un linux. Per creare initrd con la compilazione classica usa: mkinitrd -o initrd-tuo.img 2.6.25 <- versione ke hai installato uguale a quello che trovi su /lib/modules/vers.
__________________
...Ordunque... |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Feb 2004
Messaggi: 1209
|
Dimenticavo adesso Debian di default utilizza mkinitrd.yaird che crea un file accessibile con cpio..
Cmq nn so se yaird ha la stessa sintassi.. Guardaci prima
__________________
...Ordunque... |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jan 2005
Messaggi: 387
|
Ha senso usare initrd solo se hai controller scsi/raid particolari o con un'immagine precompilata del kernel, altrimenti liberati dell'initrd.
Se il tuo disco fisso è IDE, controlla di avere <*> incluso nel kernel il supporto ide per il tuo chipset e il filesystem della partizione che monti in / (ext3?).
__________________
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 02:01.



















