Forum Linux.gentoo Kernel panic - VFS

Posté par  .
Étiquettes : aucune
0
3
août
2006
Bonjour à tous.

Voila j'ai une Gentoo (stage 3) fraichement installé, j'ai suivi les instructions du handbook.

Mais j'ai un Kernel Panic au démarrage !

VFS: 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, @++ ;)
  • # Controleur IDE

    Posté par  (Mastodon) . Évalué à 3.

    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
    • [^] # Re: Controleur IDE

      Posté par  . É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.

    Posté par  . Évalué à 3.

    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  . É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.

      Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it

      • [^] # Re: ton noyau ne trouve pas la partition racine.

        Posté par  . É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  . É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  . É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 ?

            Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it

            • [^] # Re: ton noyau ne trouve pas la partition racine.

              Posté par  . É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  . É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

                Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it

  • # kernel /boot/kernel-2.6.17-gentoo-r4 root=/dev/hda3

    Posté par  . Évalué à 1.

    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  . É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  . É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  . É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

            Posté par  . Évalué à 1.

            De plus lorsque je boot sur le live CD ubuntu, j'arrive à monté mes partoches sans problème...
          • [^] # Re: kernel /boot/kernel-2.6.17-gentoo-r4 root=/dev/hda3

            Posté par  . É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  (site web personnel) . É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  . É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  (site web personnel) . É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...

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.