Retourner aux forums || Retourner au forum Linux.gentoo
Linux.gentoo : Kernel panic - VFS
Posté par Auze () le 03 août 2006VFS: Cannot open root device "hda3" or unknown-block (0,0) Please append a correct "root=" boot option Kernel pani - not syncing: VFS: Unable to mount root fs on unknown-block (0,0)La partition est en ext3, et j'ai bien compilé le support en dur. Une idée ?? Merci, @++ ;)
> Lire le message (19 commentaires, moyenne: 1,5).
Controleur IDE
As tu pensé a mettre en dur ton driver IDE ? Le kernel trouve t'il bien ton disque dur et arrive t'il a lire la table des partitions ?
Dans mon cas, avec un disque SATA, j'ai ce message :
SCSI device sda: 117210240 512-byte hdwr sectors (60012 MB)
sda: Write Protect is off
sda: Mode Sense: 00 3a 00 00
SCSI device sda: drive cache: write back
SCSI device sda: 117210240 512-byte hdwr sectors (60012 MB)
sda: Write Protect is off
sda: Mode Sense: 00 3a 00 00
SCSI device sda: drive cache: write back
sda: sda1 sda2 sda3
sd 0:0:0:0: Attached scsi disk sda
apt-get moo
-
[^]Re: Controleur IDE
Posté par Auze () le 03/08/2006 à 09:46. (lien). Évalué à 1.Oui, j'ai bien le support compilé lui aussi en dur pour mon disque IDE.
Il trouve en effet mon disque puisque mon /boot et sur hda1 (oui, oui j'a usivi le handbook à la lettre) et il commence à démarrer.
En passant si quelqu'un avait des infos sur l'interet d'un plan de partionnement, je suis prenneur.
Merci...
ton noyau ne trouve pas la partition racine.
Quelques pistes :
* indique à ton noyau l'emplacement de la partition racine à l'aide de la commande rdev (voir sa page de man ou lance "rdev --help") ;
* indique à ton noyau l'emplacement de la partition racine à l'aide d'une option de ton bootloader (si tu utilises lilo, une ligne "root=/dev/XXX" dans /etc/lilo.conf) ;
* ton noyau n'a pas le pilote (compilé en dur ou en module et chargé par un initrd) pour le disque où se trouve la partition racine.
-
[^]Re: ton noyau ne trouve pas la partition racine.
Posté par Farvardin (page perso, ) le 03/08/2006 à 11:03. (lien). Évalué à 2.quel gestionnaire de démarrage ? Lilo ou Grub ? Moi j'ai déjà eu cela avec lilo, il manquait des options dans le fichier de conf.
--
You can't grep dead trees...-
[^]Re: ton noyau ne trouve pas la partition racine.
Posté par Auze () le 03/08/2006 à 14:01. (lien). Évalué à 1.J'utilise grub.
voici mon grub.conf :
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title=Gentoo Linux
root (hd0,0)
kernel /boot/kernel-2.6.12-gentoo-r10 root=/dev/hda3-
[^]Re: ton noyau ne trouve pas la partition racine.
Posté par Auze () le 03/08/2006 à 14:04. (lien). Évalué à 1.Rectification : le noyeau c'est 2.6.1-gentoo-r4. Mais je suis sur le Pc du taf la , et on ne peut éditer ses posts ;) donc il faut voir
kernel /boot/kernel-2.6.17-gentoo-r4 root=/dev/hda3
-
[^]Re: ton noyau ne trouve pas la partition racine.
Posté par Farvardin (page perso, ) le 03/08/2006 à 15:08. (lien). Évalué à 2.sous debian c'est peut être un peu différent, en fait dans /boot/grub/menu.lst j'ai cela :
title Debian GNU/Linux, kernel 2.6.16-1-k7
root (hd0,5)
kernel /boot/vmlinuz-2.6.16-1-k7 root=/dev/hda6 ro
initrd /boot/initrd.img-2.6.16-1-k7
savedefault
boot
pourquoi n'as tu rien en initrd ?
as tu généré le fichier en question avec mkinitrd ?--
You can't grep dead trees...-
[^]Re: ton noyau ne trouve pas la partition racine.
Posté par Auze () le 03/08/2006 à 15:41. (lien). Évalué à 1.non, je nais pas généré avec mkinitrd.
Mais il me semble pas que cela soit utile sous gentoo ( en tout cas ce n'est pas écrit dans le handbook).
Et c'est ùma seconde installation de gentoo, et il me semble pas avoir oublier d'étape, je viens de relire la doc et il ne parle de initrd que dans le cas d'un kernel générique fait avec gen kernel ( j'ai fait le mien à la main).
Je vais esseyer de creuser un peu plus, sinon tu as des infos sur la synthaxe de mkinitrd ?
Merci :)-
[^]Re: ton noyau ne trouve pas la partition racine.
Posté par Farvardin (page perso, ) le 03/08/2006 à 18:09. (lien). Évalué à 2.je ne saurais vraiment te conseiller, c'est un peu au delà de mes connaissances sur le sujet. A l'époque où j'avais recompilé des noyaux sur mes linux, j'avais périodiquement des kernel panic de ce style parce que j'avais mal suivi la procédure de préparation du noyau. Peut-être que pour ton cas c'est différent, mais si j'ai bien compris, initrd est un genre de ramdisk qui lance un système minimal qui permet ensuite de préparer le système à lancer le noyau proprement dit. Si tu compiles le support de ext2/ext3 en dur, normalement tu n'as pas besoin de initrd, mais moi je l'avais fait et pourtant j'avais ce kernel panic malgré tout, en corrigeant le initrd cela avait pu revenir dans l'ordre.
http://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/init(...)
http://www.redhat.com/docs/manuals/linux/RHL-7.3-Manual/cust(...)
c'est juste une piste possible--
You can't grep dead trees...-
[^]Re: ton noyau ne trouve pas la partition racine.
-
-
-
-
-
-
kernel /boot/kernel-2.6.17-gentoo-r4 root=/dev/hda3
Le problème peut venir de l'option "root=/dev/hda3" passée au noyau.
Combien de disque dur as-tu ?
Sont-ils ide, sata, scsi ?
Comment as-tu partitionné le disque où se trouve la partition racine ?
Sinon, tu n'as pas compilé en dur le pilote du système de fichier ou le pilote de disque dur. Peux-tu poster le contenu du fichier .config qui se trouve à la racine des sources linux (probablement /usr/src/linux) ?
-
[^]Re: kernel /boot/kernel-2.6.17-gentoo-r4 root=/dev/hda3
Posté par Auze () le 04/08/2006 à 08:52. (lien). Évalué à 1.J'ai qu'un seul disque IDE partitionné ainsi :
hda1 = /boot, ext2
hda2= Swap
hda3= / ,ext3
hda4= Logique
hda5= /home, ext3
Pour le kernel il me semble que j'ai tout bien fait. Voila mon .config :
http://auze.free.fr/Linux/linux-.config
Merci encore ;)-
[^]Re: kernel /boot/kernel-2.6.17-gentoo-r4 root=/dev/hda3
Posté par slack () le 04/08/2006 à 11:05. (lien). Évalué à 1.Tous les pilotes indispensables au boot sont compilés en dur sauf celui du chipset VIA82XXX (voir le menu Device Drivers / sous menu ATA/ATAPI/MFM/RLL support).
Pourquoi ne pas le compiler en dur ? Si cela ne solutionne pas ton problème, je sèche ...
Au boot, mon noyau affiche :
hda: <Non du fabriquant du disque dur>Maxtor 6E040L0, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
Probing IDE interface ide1...
hda: max request size: 128KiB
hda: <capacité du disque> 80293248 sectors (41110 MB) w/2048KiB Cache, CHS=65535/16/63, UDMA(133)
hda: cache flushes supported
hda: <partitions reconnues>hda1 hda2 hda3 hda4
Au boot, ton noyau affiche-t-il des informations semblables concernant ton disque dur ? Les partitions hda1, hda2, hda3 sont-elles reconnues ?-
[^]Re: kernel /boot/kernel-2.6.17-gentoo-r4 root=/dev/hda3
Posté par Auze () le 04/08/2006 à 12:16. (lien). Évalué à 1.J'ai compilé le support en dur, néant...
Il me detecte mon disque dur car le mbr ce lance (grub) et il trouve ma kernel image dans /boot ( /dev/hda1 ) donc j'en déduis qu'il detecte le disque dur.
Bon, bon, bon..., ahem, /o\-
[^]Re: kernel /boot/kernel-2.6.17-gentoo-r4 root=/dev/hda3
-
[^]Re: kernel /boot/kernel-2.6.17-gentoo-r4 root=/dev/hda3
Posté par slack () le 04/08/2006 à 15:18. (lien). Évalué à 1.>Il me detecte mon disque dur car
> le mbr ce lance (grub)
> et il trouve ma kernel image dans /boot ( /dev/hda1 )
> donc j'en déduis qu'il detecte le disque dur.
NON ! Voici en bref l'initialisation du système :
1 le bios initialise l'ordinateur et charge le MBR où il trouve grub qu'il lance
2 grub charge le noyau linux qu'il lance
3 le noyau initiale l'ordinateur
4 le noyau monte la partition racine
5 le noyau charge puis lance le processus init à partir de la racine
6 init lance les scripts d'initialisation du système.
Ta machine s'arrête à l'étape 4.
Le noyau est bavard : affiche-t-il quelques lignes indiquant qu'il a trouvé ton disque hda et ses partitions ?-
[^]Re: kernel /boot/kernel-2.6.17-gentoo-r4 root=/dev/hda3
Posté par Raphaël Gertz (page perso, ) le 05/08/2006 à 04:20. (lien). Évalué à 2.Laisse tomber tout ce qu'on t'as dis au dessus, si mes souvenir sont bon c'est un problème du noyau lui même !!!
Il faut que tu le recompile sans le support avancé des table de partitions :
# CONFIG_PARTITION_ADVANCED is not set
Ça devrais résoudre ton problème...
(il dois exister des patchs pour résoudres ce problèmes, mais mes recherches avancées sur le sujet m'ont conduis a de vieux post sur la lkml du 2.6.0-test11 qui signalais déjà ce problème...)
Je connais ce soucis car j'ai déjà pratiqué avec le noyau 2.6.16.x tmb sous mandriva cooker qui me faisait ça.
Si ça vient pas de là, c'est que ton système ne trouve pas le module noyau dont il a besoin pour accéder au disque dur, essaye de forcer mkinitrd a ré-générer ton initrd.img avec le modules suivant :
ide-generic
(ça te donnera accès a tous les disques ide, après tu peux faire pareil pour tout et trouver celui don't tu a besoin qui correspond au chipset de ta carte mère)-
[^]Re: kernel /boot/kernel-2.6.17-gentoo-r4 root=/dev/hda3
Posté par slack () le 05/08/2006 à 07:17. (lien). Évalué à 1.>Il faut que tu le recompile sans le support
> avancé des table de partitions :
># CONFIG_PARTITION_ADVANCED is not set
Désactiver cette option solutionnera peut-être le problème mais
lorsque l'on configure le noyau, voici l'aide affichée :
CONFIG_PARTITION_ADVANCED:
Say Y here if you would like to use hard disks under Linux which
were partitioned under an operating system running on a different
architecture than your Linux system.
Note that the answer to this question won't directly affect the
kernel: saying N will just cause the configurator to skip all
the questions about foreign partitioning schemes.
If unsure, say N.
----------fin de l'aide --------------------
>Si ça vient pas de là, c'est que ton système
> ne trouve pas le module noyau dont il
> a besoin pour accéder au disque dur,
Vu le fichier .config, quel pilote compilé en module est-il indispensable au boot ?-
[^]Re: kernel /boot/kernel-2.6.17-gentoo-r4 root=/dev/hda3
Posté par Raphaël Gertz (page perso, ) le 05/08/2006 à 21:20. (lien). Évalué à 2.via82cxxx <= a priori ce module
(après t'a désactivé tous les autres donc j'espère que c'est celui-là parce que tu devra rebuild ton noyau avec les autres sinon)
Et puis met le en dur, ça sera toujours ça de fait ;)
Pour ce qui est de CONFIG_PARTITION_ADVANCED t'en a pas besoin, c'est juste au cas où tu te plug un disque partitionné a la mode Ibm/sun/etc...
-
-
-
-
-
-
Revenir en haut de page || Retourner aux forums || Retourner au forum Linux.gentoo



Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.