OVH Cloud OVH Cloud

kernel panic (pivotroot failed 2)

4 réponses
Avatar
mykey
Bonjour,

J'ai le regret d'avoir un kernel panic, et je n'arrive pas à réparer, je
me bats depuis deux heures, mais toujours rien!

Voici mon erreur:

pivotroot: pivot_root(/sysroot,/sysroot/initrd) failed: 2

et 2~3 ligne plus loin un joli:

Kernel Panic: No init found. Try passing init= option to kernel


Bref, j'ai effectué une réinstallation de Lilo (mon boot-loader) depuis
le mode rescue de MDK9.2 mais ça ne viens pas de là.
(puis j'ai tenté de rajouté sur la ligne du failsafe init=/bin/sh mais
toujours rien...

par contre je crois ne pas avoir "bien" réussit à réinstaller le boot
loader à la main (lancer la commande lilo) pour qu'il recrée ce qu'il
faut, donc si quelqu'un pourrait me dire ce qu'il faut faire après avoir
modifié le lilo.conf... J'ai lancé le mode rescue de ma MDK9.2, et monté
les partitions dans /mnt/... soit moi lilo.conf dans /mnt/etc/lilo.conf)


Ensuite j'ai vérifié le inittab dans /etc (le bon :) mais toujours rien,
il a l'air bien clean.

Si quelqu'un serait quoi faire!! Je n'ai *nullement* envie de
réinstaller, peut-être de tenter une mise à jour car je crois que ceci
n'efface rien du tout!

Au revoir,
Mike M.

4 réponses

Avatar
Mikael
Visiblement il y a un problème avec l'init. Lorsqu'un noyau a été compilé et
installé, il faut créer "l'image mémoire" (initial ramdisk) qui va prendre
en charge le lancement du noyau. Cette image mémoire est constituée par le
fichier /boot/initrc. Visiblement, lilo n'arrive pas à la trouver, donc
deux possibilités :
- soit elle n'a pas été correctement générée ; dans ce cas utilise le
script mkinitrd (présent sous ma SuSE, je suppose que ça existe sous la
Mandrake)
- elle existe mais lilo n'arrive pas à la trouver à cause d'une mauvaise
configuration de lilo.conf. Dans ce cas vérifie que l'option root= pointe
bien sur la bonne partition du disque dur où se trouve initrd. (par exemple
root=/dev/hda2 si ton système se trouve sur la deuxième partition de ton
disque dur).

J'espère que ça aidera.

Mikael


mykey wrote:

Bonjour,

J'ai le regret d'avoir un kernel panic, et je n'arrive pas à réparer, je
me bats depuis deux heures, mais toujours rien!

Voici mon erreur:

pivotroot: pivot_root(/sysroot,/sysroot/initrd) failed: 2

et 2~3 ligne plus loin un joli:

Kernel Panic: No init found. Try passing init= option to kernel


Bref, j'ai effectué une réinstallation de Lilo (mon boot-loader) depuis
le mode rescue de MDK9.2 mais ça ne viens pas de là.
(puis j'ai tenté de rajouté sur la ligne du failsafe init=/bin/sh mais
toujours rien...

par contre je crois ne pas avoir "bien" réussit à réinstaller le boot
loader à la main (lancer la commande lilo) pour qu'il recrée ce qu'il
faut, donc si quelqu'un pourrait me dire ce qu'il faut faire après avoir
modifié le lilo.conf... J'ai lancé le mode rescue de ma MDK9.2, et monté
les partitions dans /mnt/... soit moi lilo.conf dans /mnt/etc/lilo.conf)


Ensuite j'ai vérifié le inittab dans /etc (le bon :) mais toujours rien,
il a l'air bien clean.

Si quelqu'un serait quoi faire!! Je n'ai *nullement* envie de
réinstaller, peut-être de tenter une mise à jour car je crois que ceci
n'efface rien du tout!

Au revoir,
Mike M.


Avatar
mykey
Visiblement il y a un problème avec l'init. Lorsqu'un noyau a été compilé et
installé, il faut créer "l'image mémoire" (initial ramdisk) qui va prendre
en charge le lancement du noyau. Cette image mémoire est constituée par le
fichier /boot/initrc. Visiblement, lilo n'arrive pas à la trouver, donc
deux possibilités :
- soit elle n'a pas été correctement générée ; dans ce cas utilise le
script mkinitrd (présent sous ma SuSE, je suppose que ça existe sous la
Mandrake)


Je pense qu'elle est tout à fait OK,
sauf que chez moi cela s'appelle initrd-2.4.22-10mdk.img... enfin avec
un lien symbolique (qui est plus simple) elle s'appelle initrd.img
Pas de initrc en vue dans mon /boot !

- elle existe mais lilo n'arrive pas à la trouver à cause d'une mauvaise
configuration de lilo.conf. Dans ce cas vérifie que l'option root= pointe
bien sur la bonne partition du disque dur où se trouve initrd. (par exemple
root=/dev/hda2 si ton système se trouve sur la deuxième partition de ton
disque dur).



Je crois qu'il s'agit bien de lilo.conf où les root= sont mal
initialisés car j'ai dernièrement modifié mes partitions avec diskdrak,
et réécrie le fstab... Mais apparement, ce joujou n'est pas terrible!

Je vais modifié mon lilo.conf... C'est bizare que le mode rescue ne m'a
pas bien recréée mon boot loader :-/

(
Par exemple, pour le boot de linux j'ai:
append="devfs=mount hdc=ide-scsi hdd=ide-scsi acpi=ht resume=/dev/hda7
splash=silent"

root=/dev/hda8

et maintenant la partition racine se trouve sur hda4
par contre je ne sais pas pour resume=/dev/hda7 (?)
)


J'espère que ça aidera.



Je vais tenter de modifier mon lilo.conf sur ce point... Mais je ne sais
pas comment (après modification) lancer la commande lilo!

Je suis en mode rescue, et je monte tous les systèmes de fichiers dans /mnt.

Mikael



Merci,
Mike M.

Avatar
Doug713705
Le dimanche 5 Septembre 2004 11:19, mykey s'est exprimé de la sorte sur
fr.comp.os.linux.configuration :



Je crois qu'il s'agit bien de lilo.conf où les root= sont mal
initialisés car j'ai dernièrement modifié mes partitions avec diskdrak,
et réécrie le fstab... Mais apparement, ce joujou n'est pas terrible!



La ligne de commande reste le meilleur ami du linuxien.

Je vais modifié mon lilo.conf... C'est bizare que le mode rescue ne m'a
pas bien recréée mon boot loader :-/

(
Par exemple, pour le boot de linux j'ai:
append="devfs=mount hdc=ide-scsi hdd=ide-scsi acpi=ht resume=/dev/hda7
splash=silent"

root=/dev/hda8

et maintenant la partition racine se trouve sur hda4
par contre je ne sais pas pour resume=/dev/hda7 (?)
)




Je ne connais pas lilo mais j'imagine que si il n'y a pas de partition de
resume cela ne l'empechera pas de booter. donc corrige ton lilo.conf afin
que lilo puisse booter sur /dev/hda4 si c'est ta nouvelle partition racine
et supprime "resume=/dev/hda7".

Une fois que tu auras booté, il te sera facile de retrouver ta partition de
resume avec :
# fdisk -l /dev/hda qui listera tes partitions sur /dev/hda

En comparant astucieusement avec le fichier /etc/mtab (la liste des
partitions actuellement montées sur ton système) tu devrais être en mesure
de retrouver ta partition.

Une fois ta partition resume retrouvée, il te suffira de réécrire la ligne
de lilo.conf "resume=/dev/hdax", de vérifier et corriger /etc/fstab si
nécéssaire et de rebooter.



--
@+
Doug [Linux user #307925] - *Slackware* *Rulez* *;-)*
[Pourquoi t'es qui, qu'est ce que tu fais par où ?]
-- Pour me contacter enlever no-spam (2X) --

Avatar
mykey
Re-bonjour :)

Doug713705 a saisi sur ce dernier post:

Le dimanche 5 Septembre 2004 11:19, mykey s'est exprimé de la sorte sur
fr.comp.os.linux.configuration :

Je vais modifié mon lilo.conf... C'est bizare que le mode rescue ne m'a
pas bien recréée mon boot loader :-/

(
Par exemple, pour le boot de linux j'ai:
append="devfs=mount hdc=ide-scsi hdd=ide-scsi acpi=ht resume=/dev/hda7
splash=silent"

root=/dev/hda8

et maintenant la partition racine se trouve sur hda4
par contre je ne sais pas pour resume=/dev/hda7 (?)
)




Je ne connais pas lilo mais j'imagine que si il n'y a pas de partition de
resume cela ne l'empechera pas de booter. donc corrige ton lilo.conf afin
que lilo puisse booter sur /dev/hda4 si c'est ta nouvelle partition racine
et supprime "resume=/dev/hda7".


Ca se complique!! Je suis de retour sous linux mais j'ai dû viré quelques
partitions de mon fstab!!

Je m'explique sur mon nouveau problème:

Déjà de un, pendant le boot, le swapon ne marche pas! Pas étonnant :-/

Ensuite pendant le boot il était écrie que le fs était corrompu et que je
pouvait corriger cela en me donnant la main à une console.

Bien, j'ai viré les partitions que je n'ai pas besoin du fstab, mais je suis
certain que parmis celle une seule partition pose problème et la swap aussi!

A présent je boot sous mdk linux.



Le problème a pris suite quand j'ai modifié mes partitions, et notamment déplacé
la swap...
J'ai aussi agrandit, et recréé d'ailleurs, une partition (les données présentes
sur cette partition sont sans valeur, donc je peux formater la partition sans
soucis majeur, encore heureux).


Maintenant que je suis sous linux, je vais supprimer la swap et la recréé.



Une fois que tu auras booté, il te sera facile de retrouver ta partition de
resume avec :
# fdisk -l /dev/hda qui listera tes partitions sur /dev/hda

En comparant astucieusement avec le fichier /etc/mtab (la liste des
partitions actuellement montées sur ton système) tu devrais être en mesure
de retrouver ta partition.

Une fois ta partition resume retrouvée, il te suffira de réécrire la ligne
de lilo.conf "resume=/dev/hdax", de vérifier et corriger /etc/fstab si
nécéssaire et de rebooter.



OK, j'ai fait un fdisk, et j'ai bien la swap sur la partition hda8 comme dans le
fstab... Mais je vais effacer cette dernière (temporairement)!





Merci pour ta réponse, ça m'a +- aidé :)
Mike M.

--
Registered Linux User #361637
Vous aussi identifiez-vous en tant qu'utilisateur
de Linux sur le site <http://counter.li.org/>
PS: <http://mykey57.free.fr/> tout sur moi et autre