Erreur au démarage avec un nouveau noyeau

Bonjour à tous,
Je cherche désespérément pourquoi, après avoir compilé un nouveau noyau (2.6.22), j’ai toujours cette erreur quand je le lance :

[quote]VFS : Cannot open root device “hda1” or unknown block (0,0)
Please append a correct root="" boot option.
VFS : Unable to mount root fs or unknown-block (0,0).[/quote]
En tout cas, c’est à peu près ça qu’il me dit.
J’utilise GRUB, mon /boot/grub/menu.lst :

[quote]# menu.lst - See: grub(8), info grub, update-grub(8)

grub-install(8), grub-floppy(8),

grub-md5-crypt, /usr/share/doc/grub

and /usr/share/doc/grub-doc/.

default num

Set the default entry to the entry number NUM. Numbering starts from 0, and

the entry number 0 is the default if the command is not used.

You can specify ‘saved’ instead of a number. In this case, the default entry

is the entry saved with the command ‘savedefault’.

WARNING: If you are using dmraid do not change this entry to ‘saved’ or your

array will desync and will not let you boot your system.

default 0

timeout sec

Set a timeout, in SEC seconds, before automatically booting the default entry

(normally the first entry defined).

timeout 5

Pretty colours

color cyan/blue white/blue

password [’–md5’] passwd

If used in the first section of a menu file, disable all interactive editing

control (menu entry editor and command-line) and entries protected by the

command ‘lock’

e.g. password topsecret

password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/

password topsecret

examples

title Windows 95/98/NT/2000

root (hd0,0)

makeactive

chainloader +1

title Linux

root (hd0,1)

kernel /vmlinuz root=/dev/hda2 ro

Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST

BEGIN AUTOMAGIC KERNELS LIST

lines between the AUTOMAGIC KERNELS LIST markers will be modified

by the debian update-grub script except for the default options below

DO NOT UNCOMMENT THEM, Just edit them to your needs

## Start Default Options

default kernel options

default kernel options for automagic boot options

If you want special options for specific kernels use kopt_x_y_z

where x.y.z is kernel version. Minor versions can be omitted.

e.g. kopt=root=/dev/hda1 ro

kopt_2_6_8=root=/dev/hdc1 ro

kopt_2_6_8_2_686=root=/dev/hdc2 ro

kopt=root=/dev/hda1 ro

default grub root device

e.g. groot=(hd0,0)

groot=(hd0,0)

should update-grub create alternative automagic boot options

e.g. alternative=true

alternative=false

alternative=true

should update-grub lock alternative automagic boot options

e.g. lockalternative=true

lockalternative=false

lockalternative=false

additional options to use with the default boot option, but not with the

alternatives

e.g. defoptions=vga=791 resume=/dev/hda5

defoptions=

should update-grub lock old automagic boot options

e.g. lockold=false

lockold=true

lockold=false

Xen hypervisor options to use with the default Xen boot option

xenhopt=

Xen Linux kernel options to use with the default Xen boot option

xenkopt=console=tty0

altoption boot targets option

multiple altoptions lines are allowed

e.g. altoptions=(extra menu suffix) extra boot options

altoptions=(single-user) single

altoptions=(single-user mode) single

controls how many kernels should be put into the menu.lst

only counts the first occurence of a kernel, not the

alternative kernel options

e.g. howmany=all

howmany=7

howmany=all

should update-grub create memtest86 boot option

e.g. memtest86=true

memtest86=false

memtest86=true

should update-grub adjust the value of the default booted system

can be true or false

updatedefaultentry=false

## End Default Options

title Debian GNU/Linux, kernel 2.6.22-3
root (hd0,0)
kernel /boot/vmlinuz-2.6.22-3 root=/dev/hda1 ro
savedefault

title Debian GNU/Linux, kernel 2.6.18-4-486
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-4-486 root=/dev/hda1 ro
initrd /boot/initrd.img-2.6.18-4-486
savedefault

title Debian GNU/Linux, kernel 2.6.22-2
root (hd0,0)
kernel /boot/vmlinuz-2.6.22-2 root=/dev/hda1 ro
savedefault

title Debian GNU/Linux, kernel 2.6.22-2 (single-user mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.22-2 root=/dev/hda1 ro single
savedefault

title Debian GNU/Linux, kernel 2.6.22-1
root (hd0,0)
kernel /boot/vmlinuz-2.6.22-1 root=/dev/hda1 ro
savedefault

title Debian GNU/Linux, kernel 2.6.22-1 (single-user mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.22-1 root=/dev/hda1 ro single
savedefault

title Debian GNU/Linux, kernel 2.6.22
root (hd0,0)
kernel /boot/vmlinuz-2.6.22 root=/dev/hda1 ro
savedefault

title Debian GNU/Linux, kernel 2.6.22 (single-user mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.22 root=/dev/hda1 ro single
savedefault

title Debian GNU/Linux, kernel 2.6.18-4-486 (single-user mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-4-486 root=/dev/hda1 ro single
initrd /boot/initrd.img-2.6.18-4-486
savedefault

END DEBIAN AUTOMAGIC KERNELS LIST

[/quote]
Voila voila…

Sxmon

Ca plante parcequ’entre le 2.6.18 et le 2.6.22, il y a eu uniformisation des noms des disques et que tous les disques s’appellent maintenant sdX. Sous 2.6.22, ton disque s’appelle donc sda.
Tu n’as pas dû chercher beaucoup parceque c’est un problême récurrent.

Depuis le 2.6.18, il faudrait changer le menu.lst ET le fstab pour remplacer hda par sda partout, mais tu ne pourrais plus utiliser le 2.6.18. Heureusement, il y a mieux en utilisant plus le nom dans /dev, mais l’identifiant unique du disque:
manual.sidux.com/fr/part-uuid-fr.htm
doc.ubuntu-fr.org/uuid_et_label
L’avantage, c’est que si tu changes ton disque de place (par exemple si tu le mets en slave, ou que tu le branches sur un adaptateur usb), il n’y a rien à changer, ça boote aussi.

Bonjour,

Ayant eu le meme message d’erreur apres compilation , voici ce que j’ai trouvé la plupart du temps sur le web :

VFS: Cannot open root device “hda1” or unknown block (0,0) Kernel panic - not syncing: VFS Unable to mount root fs on unknow block (0,0)

Dans ce cas, après make menuconfig, édites le fichier .config en changeant:

CONFIG_PARTITION_ADVANCED=y en

CONFIG_PARTITION_ADVANCED

Juste pour dire que lorsque on débute , on trouve plein d’infos sur le web et ce n’est pas facile de savoir quelle est la bonne.

Ayant essayer celle ci , je peux dire qu’elle ne fonctionne pas ( du moins par pour moi).

juste une question :

j’ai une ETCH sur un portable , avec 2 kernel un en 2.6.24 et l’autre en 2.6.18 de base non modifié .Mais au demarrage j’ai toujours ce fameux message d’erreur quelquesoit le kernel choisi.
Sur le 2.6.24 j’ai utilisé CONFIG_PARTITION_ADVANCED=y en

CONFIG_PARTITION_ADVANCED

mais sans succés.

Lorsque je boote sur celui de base j’ai le meme message d’erreur ( meme quand il etait le seul noyau)

Ton astuce s’applique t-elle aussi au 2.6.18 ou juste au kernel d’après ?

Merci

A tous.

Sinon, le message “Kernel panic - not syncing: VFS Unable to mount root fs” signifie juste que le noyau n’arrive pas à accèder à root. Ca peut être à cause du manque des éléments dans le noyau permettant de lire la partition (le pilote du disque, du controleur sur la carte mère, du format utilisé pour la partition, par ex) mais le plus souvent, ça vient d’une mauvaise spécification de l’argument “root=” qu’on passe au noyau.

Ah un truc courant aussi: comme souvent la plupart des modules concernant l’accés à cette partition sont en module, si on oublie de passer l’argument --initrd à make-kpkg quand on compile le noyau, on a le même message. Ca peut être ça aussi, je n’y pensais plus…

Ok Merci

Je vais tester tout ça ce week end

Bonjour,

Mattop :[quote]Depuis le 2.6.18, il faudrait changer le menu.lst ET le fstab pour remplacer hda par sda partout, mais tu ne pourrais plus utiliser le 2.6.18. Heureusement, il y a mieux en utilisant plus le nom dans /dev, mais l’identifiant unique du disque:
manual.sidux.com/fr/part-uuid-fr.htm
doc.ubuntu-fr.org/uuid_et_label
L’avantage, c’est que si tu changes ton disque de place (par exemple si tu le mets en slave, ou que tu le branches sur un adaptateur usb), il n’y a rien à changer, ça boote aussi.
Ca plante parcequ’entre le 2.6.18 et le 2.6.22, il y a eu uniformisation des noms des disques et que tous les disques s’appellent maintenant sdX. Sous 2.6.22, ton disque s’appelle donc sda.
Tu n’as pas dû chercher beaucoup parceque c’est un problême récurrent.

Depuis le 2.6.18, il faudrait changer le menu.lst ET le fstab pour remplacer hda par sda partout, mais tu ne pourrais plus utiliser le 2.6.18. Heureusement, il y a mieux en utilisant plus le nom dans /dev, mais l’identifiant unique du disque:
manual.sidux.com/fr/part-uuid-fr.htm
doc.ubuntu-fr.org/uuid_et_label
L’avantage, c’est que si tu changes ton disque de place (par exemple si tu le mets en slave, ou que tu le branches sur un adaptateur usb), il n’y a rien à changer, ça boote aussi.
[/quote]
Je ne comprends vraiment pas ce qu’il faut que je fasse…
Il y a plusieurs propositions et je ne sais pas laquelle appliquer !
Sxmon

Tu ne sais pas lire: je te dis que tu pourrais changer menu.lst et fstab pour changer hda en sda partout, mais qu’il vaut mieux utiliser les uuids (et je te donnes deux tutos différents pour ça). Ce ne sont pas “plusieurs propositions”, si ? :mrgreen:

Sinon, prépares un livecd, au cas ou tu aies besoin de corriger les fichiers parceque plus rien ne boote.

D’accord mais lequel tutoriel utiliser et quelle partie de ce tuto ? (Je n’ai pas très envie de faire des bêtises).
Sxmon

Sans déconner ! tu fais pipi tout seul ou on t’aide ?

Je suis vraiment très nul dans le domaine de tout ce qui est disque dur et je ne comprend rien au vocabulaire.

C’est l’occasion de lire et de comprendre mieux. On ne peut pas comprendre pour toi.

Ça fait 15 fois que je le lis et je comprends pas. HELP ME PLEASE.

Déjà, fait.
.
.
.
Allez, va:
google.fr/search?q=linux+nom … rt=10&sa=N
linux-kheops.com/doc/bien-de … ode62.html