# [KERNEL] kernel panic avec grub +1 [SOLVED]

## illog1k

Bonjour,

comme beaucoup de personnes apres l'installation du dernier noyau, j'ai eu la joie d'avoir cette erreure.

j'ai donc chercher sur le forum a la recherche d'une solution et malheureusement rien y fait, quand ca ne veut pas, ca ne veut pas  :Smile: 

je possède :

Acer ASPIRE 1693WLMi

j'ai bien verifier d'avoir mis en dur les modules de mon disque dur dans le noyau (chipset intel) j ai verifier mon fs (j'utilise ext2 pour mon /boot et ext3 pour /) et puis il me semble que ca soit les choses les plus importantes non?

quelqu'un pourrait il m aider (encore une fois)?

PS: je posterais mon grub.conf fstab et lspci des que possible.Last edited by illog1k on Fri Oct 13, 2006 5:43 pm; edited 2 times in total

----------

## ghoti

 *illog1k wrote:*   

> PS: je posterais mon grub.conf fstab et lspci des que possible.

 

Et surtout le message d'erreur exact parce que "kernel panic", c'est trop vague !

----------

## illog1k

en effet le message d erreurs peut etre util aussi lol

```

VFS : Cannot open root device "hda8" or unknown-block(0,0)

Please append a correct "root=" boot option

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
```

----------

## kwenspc

il faut spécifier la partition root à ton noyau (via la ligne kernel dans grub).

par exemple chez moi j'ai :

```

kernel /kernel-2.6.18 root=/dev/ram0 udev init=/linuxrc real_root=/dev/hdc2 video=vesa:ywrap,pmipal,mtrr,1024x768-32@60 acpi_irq_balance pci=routeirq resume2=swap:/dev/hdc5 splash=silent,fadein,theme:livecd-2005.1 quiet CONSOLE=/dev/tty1

```

(ce qui t'interesses ici c'est le paramètre root et real_root)

----------

## illog1k

kwenspc: euh...ce que tu as c est une grub.conf avec genkernel non? parce que (j ai oublie de preciser) j ai fais mon noyau a la main  :Smile: 

----------

## kernelsensei

Salut,

t'as bien le support pour ton disque dur et les filesystems en dur dans le kernel ?

----------

## illog1k

kernel: oui j ai mis en dur les modules de mon disque dur (Intel) et les fs ext2 et ext3

désolé de ne pouvoir donner les fichiers de log je n ai pas encore accés a l'ordi sous "gentoo"

----------

## ghoti

C'est quoi comme type de disque : P-ATA, S-ATA, SCSI, ... ?

----------

## kwenspc

 *illog1k wrote:*   

> kwenspc: euh...ce que tu as c est une grub.conf avec genkernel non? parce que (j ai oublie de preciser) j ai fais mon noyau a la main 

 

Non, non c'est moi qui est fait cette config. (comme le noyau aussi).

----------

## illog1k

ok j essai de rajouter le real_root des que possible. je n ai juste qu a mettre real_root=/dev/hda8 en plus et retirer le root=/dev/hda8 ou je mets les deux?

----------

## illog1k

 *ghoti wrote:*   

> C'est quoi comme type de disque : P-ATA, S-ATA, SCSI, ... ?

 

c est un disque IDE sur laptop  :Smile: 

----------

## kwenspc

ben root j'ai toujours mis /dev/ram0  car vfs je crois qu'au moment où il se charge dans le noyau la "table" des devices gens hda, hdc, sda etc... n'est pas encore faite. Il me semble en tout cas, à vérifier donc. mets /dev/ram0 pour root

----------

## ghoti

 *kwenspc wrote:*   

> ben root j'ai toujours mis /dev/ram0  car vfs je crois qu'au moment où il se charge dans le noyau la "table" des devices gens hda, hdc, sda etc... n'est pas encore faite. Il me semble en tout cas, à vérifier donc. mets /dev/ram0 pour root

 

Ton "ram0" n'est valable que si tu utilises un initrd donnant un disque virtuel en RAM. Ceci ne se justifie que si tu ne veux pas mettre tes modules en dur dans le noyau.

Comme notre ami se fait son noyau à la mimine, il est fort probable qu'il n'utilise pas initrd (car tout de même un peu compliqué  :Wink:  ).

Perso, je n'utilise pas initrd non plus, donc pas de ram0 et je m'en trouve très bien  :Cool: 

[EDIT] Par contre, il est effectivement capital de pouvoir dire si les drivers sont en dur ou non ! Dans 50% des cas (bon, disons 49,9), les "kernel panic" sur le VFS proviennent de là et les 50 % restants proviennent d'une erreur de nommage du disque contenant la partition root.Last edited by ghoti on Sat Oct 07, 2006 1:37 pm; edited 2 times in total

----------

## kwenspc

ok merci de la précision  :Smile: 

----------

## ghoti

 *illog1k wrote:*   

> [c est un disque IDE sur laptop 

 

On s'en doutait un peu faut dire  :Wink: 

La question est de savoir quel protocole il utilise : "Parallel ATA" ou "Serial ATA" car cela conditionne le driver que tu dois mettre dans le noyau ainsi que le nommage des partitions (hdxx pour Parallel et sdxx pour Serial).

Tu peux trouver l'info en bootant sur un LiveCD et en tapant la commande dmesg (cherche la séquence "ATA")

----------

## Scullder

 *ghoti wrote:*   

> La question est de savoir quel protocole il utilise : "Parallel ATA" ou "Serial ATA" car cela conditionne le driver que tu dois mettre dans le noyau ainsi que le nommage des partitions (hdxx pour Parallel et sdxx pour Serial).

 

bah l'IDE c'est du PATA

----------

## ghoti

 *Scullder wrote:*   

> bah l'IDE c'est du PATA

 

Strictement parlant, tu as raison.

Pourtant :

 *wikipedia wrote:*   

> C'est l'évolution du standard Advanced Technology Attachment (ATA ou IDE)

 

Sous Linux, il existe 2 drivers permettant de gérer le SATA : l'un (le plus ancien) le gère à la mode "IDE" (notation hdxx) et l'autre à la façon "SCSI" (notation sdxx).

Si cela n'a pas changé, le LiveCD traite le SATA comme un disque IDE (notation hdxx), ce qui peut entretenir la confusion.

En conséquence, si on tombe sur une notation hdxx, on pourrait être tenté de croire qu'il s'agit d'office d'un "IDE pur" alors qu'il peut s'agir d'un "SATA". Si c'est effectivement un SATA et qu'on oublie de mettre en dur un des drivers "SATA" dans le noyau, il ne sera pas reconnu au boot et on obtient le fameux "kernel panic"

Je maintiens donc ma question  :Wink: 

----------

## illog1k

hum...ok je viens de comprendre ton explication mais par contre je ne sais pas cmt te dire si c est un IDE "pur" ou bien un SATA. Comme tu le dis, j utilise la notation hdx donc pour moi c est de l IDE. Donc je vais essayer de mettre les drivers SATA dans mon kernel et je verrais bien ce que ca donne  :Smile: 

----------

## illog1k

bon bah je viens de rajouter les modules de SATA et ca ne marche pas plus que cela...

mais que faire...?!  :Question: 

----------

## dapsaille

salut à toi ..

 j'ai mal lu ou tu n'as pas posté ton grub.conf ? ^^

----------

## illog1k

tu as mal lu  :Very Happy: 

grub.conf:

```

default 0

timeout 30

splashimage=(hd0,2)/boot/grub/splash.xpm.gz

title=Gentoo Linux

# Partition qui contient l'image du noyau

root (hd0,2)

kernel /boot/kernel-2.6.17-gentoo-r8 root=/dev/hda8

title=Windows XP

rootnoverify (hd0,0)

makeactive

chainloader +1

```

fstab:

```

# /etc/fstab: static file system information.

#

# noatime turns off atimes for increased performance (atimes normally aren't

# needed; notail increases performance of ReiserFS (at the expense of storage

# efficiency).  It's safe to drop the noatime options if you want and to

# switch between notail / tail freely.

#

# The root filesystem should have a pass number of either 0 or 1.

# All other filesystems should have a pass number of 0 or greater than 1.

#

# See the manpage fstab(5) for more information.

#

# <fs>         <mountpoint>   <type>      <opts>      <dump/pass>

# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.

/dev/hda3      /boot     ext2      noauto,noatime   1 2

/dev/hda8      /            ext3      noatime               0 1

/dev/hda7      none      swap      sw                      0 0

/dev/cdroms/cdrom0   /mnt/cdrom   iso9660      noauto,ro   0 0

#/dev/fd0      /mnt/floppy   auto      noauto      0 0

# NOTE: The next line is critical for boot!

proc         /proc      proc      defaults   0 0

# glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for

# POSIX shared memory (shm_open, shm_unlink).

# (tmpfs is a dynamically expandable/shrinkable ramdisk, and will

#  use almost no memory if not populated with files)

shm         /dev/shm   tmpfs      nodev,nosuid,noexec   0 0 

```

voila j avais completement oublie de le poster ce matin  :Very Happy: Last edited by illog1k on Sun Oct 08, 2006 2:59 pm; edited 1 time in total

----------

## dapsaille

héhéhé

title=Gentoo Linux

# Partition qui contient l'image du noyau

root (hd0,1) OU (hd1,1)

kernel /boot/kernel-2.6.17-gentoo-r8 root=/dev/sda3 OU /dev/hda3 

 les OU sont du au fait que tu as deux disques .. donc vas savoir lequel grub vas prendre ...

le /dev/hda8 il sors d'ou celui la ?? :p

et pour infos grub commene sur le premier disque premiere partition pard hd0,0 donc ton /dev/hda2 est sois hd0,1 sois hd1,1 selon sur quel disque il est vu de grub ^^

et on ne sais jamais mais sais tu que tu peux modifier l'entrée de grub dans le menu de grub au démarrage avec la touche E ?? ca permet de modifier sans rebooter sur livecd

----------

## illog1k

euh...je n ai qu un seul disque sur mon portable!

oops...mal recopier le fstab...je le remets a jour de suite

----------

## dapsaille

l'erreur venait de ton fstab ou alors j'ai besoin de me reposer ?

 il y avait bien un /dev/SD quelque chose dedans rassure moi ? 

sinon au vu de ton fstab .. bah tout est bon ... gulps .. dis moi que ton ancien fstab contenant un sd dis le moi je te prie   :Embarassed: 

EDIT = 

ha non en fait .... le grub.conf il as 

kernel /boot/kernelkekchose ... hors tu as une partition dédiée au boot .. ... donc normallement c'est 

kernel /kernelkekchose 

 à moins que je sois vraiment fatigué   :Laughing: Last edited by dapsaille on Sun Oct 08, 2006 3:33 pm; edited 1 time in total

----------

## illog1k

mon ancien fstab ne contenait pas un sd...désolé, mais DEUX sd  :Very Happy: 

une erreur de copie de ma part ^^

sinon quelqu un a une idée du pourquoi du comment ca ne marche pas?  :Sad: Last edited by illog1k on Sun Oct 08, 2006 3:35 pm; edited 1 time in total

----------

## dapsaille

 *illog1k wrote:*   

> mon ancien fstab ne contenait pas un sd mais DEUX sd 
> 
> une erreur de copie de ma part ^^

 

haaa ca me rassure j'ai edite mon post au moment on tu répondait regard au fstab .. qu'en penses tu ?

----------

## Magic Banana

 *dapsaille wrote:*   

> kernel /boot/kernelkekchose ... hors tu as une partition dédiée au boot .. ... donc normallement c'est 
> 
>                               kernel /kernelkekchose

 

Normalement, histoire d'assurer une certaine coherence avec les personne ayant /boot sur la partition racine, il y a, dans /boot, un lien symbolique vers lui meme. Peut-etre justement que tu l'as supprime par erreur (car franchement le coup du lien symbolique vers soi-meme ca parait bizzare). Le remettre resoudrait alors ton probleme :

```
# mount /boot

# ln -s /boot /boot/boot
```

----------

## illog1k

ok j essai de suite

EDIT: euh en fait je ne comprends pas une chose, 

```

mount /boot

ln -s /boot /boot/boot

```

je vais boussiller mon /boot si je fais ca non?(pcq je suppose que tu dois faire ca dans le chroot)

----------

## ghoti

 *Magic Banana wrote:*   

>  il y a, dans /boot, un lien symbolique vers lui meme. Peut-etre justement que tu l'as supprime par erreur (car franchement le coup du lien symbolique vers soi-meme ca parait bizzare). Le remettre resoudrait alors ton probleme :

 

A partir du moment où il y a un "kernel panic", c'est que le noyau est déjà booté   :Cool: 

Lien symbolique ou pas, ça ne va donc rien changer au problème : pour mémoire, c'est la partition racine qui n'est pas trouvée et pas celle de boot !

Mais je suis d'accord pour la question de cohérence  :Wink: 

----------

## ghoti

 *illog1k wrote:*   

> EDIT: euh en fait je ne comprends pas une chose, 
> 
> ```
> 
> mount /boot
> ...

 

Pour toute certitude je crois qu'il vaudrait mieux faire :

 *Quote:*   

> cd /boot
> 
> ln -s . boot     <===== remarquer : "point"-"espace"-"boot"

 

Tu crées ainsi un lien vers le répertoire en cours.

Comme Magic Banana l'a dit, cela rend les notations cohérentes dans grub, que l'on utilise une partition séparée pour boot ou non.

Examinons l'instruction kernel /boot/mon_noyau dans grub.conf :

- Si le noyau se trouve sur la partition racine (répertoire /boot), alors kernel /boot/... fait référence au répertoire /boot 

- Si le noyau se trouve sur une partition séparée, puisque les "mountages" n'ont pas encore eu lieu au niveau de grub, alors kernel /boot/... fait référence au lien symbolique boot, lequel pointe vers le répertoire en cours qui n'est autre que la "racine" de la partition boot. (tu suis toujours ?  :Laughing: )

----------

## illog1k

bon bah j ai essayé de faire la chose mais je pense que j ai fais une betise...

j ai monté les partitions et j ai fais ce qui a été dit

```

mount /boot

cd /boot

ln -s . /boot

```

apres cela et bien qd je redemarre j ai le droit a une "Error 15" de la part de grub...

donc j ai cherché un peu et j ai trouvé un truc sur gentoo.org je fais ce qu il me dise de faire et maintenant quand je redémarre je me retrouve avec un "mini shell"

```
grub> 
```

donc je regarde les options et je choisis "kernel"

quand j essai de monter le kernel de mon choix, je remarque que il n est pas sur le boot de ma "partition" mais celui du livecd ou tout autre chose...

serait ce parce que il y a un probleme de lien?

comment faire pour réparer mon error 15 au passage?

----------

## Magic Banana

Réinstalle GRUB.

Pour cela rien ne vaut LA référence absolue : le manuel Gentoo !

Voilà comment tu dois t'y prendre à l'invite du shell GRUB :

```
grub> root (hd0,2)    (Indique où se trouve la partition /boot.)

grub> setup (hd0)     (Écrit GRUB dans le MBR.)

grub> quit            (Quitte le shell GRUB.)
```

----------

## illog1k

merci banana, ca remarche!

bon maintenant j ai toujours mon probleme du kernel panic...que faire?

est ce que quelqu un pourrait me recapituler ce que je dois verifier?

pour rappel je suis avec un disque IDE (PATA apparement) mon fs est ext2 pour le /boot et ext3 pour / (dans le kernel les drivers sont mis en dur pour l IDE intel et le fs).

je seche completement   :Crying or Very sad: 

----------

## dapsaille

Bon et bien méthode bourrin ...

 met en dur TOUS les modules IDE ...

----------

## illog1k

en effet bourrin  :Very Happy: 

bon j essai de suite  :Very Happy: 

----------

## illog1k

bon bah ca me fait otujours un kernel panic alors que j ai mis TOUT les driver IDE..............

EDIT: bon bah meme avec les drivers SATA ca ne marche pas......... ca se trouve ou les drivers PATA????

----------

## dapsaille

ca sens le paté ton truc la :p

 genre IDE DISK est bien activé ? :p

méthode double bourrin . un kernel par défaut ... juste pour voir

----------

## illog1k

 *dapsaille wrote:*   

> ca sens le paté ton truc la :p
> 
>  genre IDE DISK est bien activé ? :p
> 
> méthode double bourrin . un kernel par défaut ... juste pour voir

 

bah en théorie j ai bien tout coché lol vu que j ai tout coché pour etre sur  :Very Happy:  sinon c est quoi le nom de la variable ds le .config que je verifie?

qu est ce que tu entends par kernel par defaut? comment faire? tiens je viens de voir que la plupart utilises vanilla-sources est ce que ca change quelquechose si j utilise gentoo-sources?

----------

## Magic Banana

Je suppose que dapsaille veut parler d'un kernel généré automatiquement avec genkernel. Je te renvoie une fois de plus à LA référence absolue !  :Wink: 

----------

## illog1k

bon et bien avec genkernel ca marche...

il va falloir que je cherche les bons drivers a mettre dans mon kernel je suppose non?

----------

