Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[first-aid] kernel panic - not syncing: VFS: unable to mount
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
BuBuaBu
l33t
l33t


Joined: 09 Jul 2005
Posts: 914
Location: France

PostPosted: Mon Jul 03, 2006 1:16 pm    Post subject: [first-aid] kernel panic - not syncing: VFS: unable to mount Reply with quote

Ce post a pour but de recenser toutes les causes du "kernel panic - not syncing: VFS: unable to mount root fs".
Il s'adresse plus pour les débutants, mais si il n'a pas ça place ici, je comprendrai qu'il soit modéré.

Intro

Ce message apparaît lorsque le kernel qui se charge n'arrive pas a lire la partition root (/).

Si l'installation est parvenu jusqu'au stade de reboot, il y a forcement une solution.

Comme le kernel se charge, on sait déjà que la configuration du bootloader (chargeur de démarage) est correct (sauf option passé au kernel).

Plusieur cause possible :
-L'argument root=... passé au kernel est incorrect.

-Le système de fichiers n'est pas reconnu par le kernel.

-le contrôleur du disque dur n'est pas reconnu par le kernel.

-Le raid (si il a) n'est pas chargé par le kernel.

Je conseille de vérifier le point I à IV dans l'ordre : il sont classé du plus rapide au plus ch...
Le problème n'a peu être pas une seul cause.
Le point V étant un peu a part.

I - L'argument root=... passé au kernel

Cette argument ce configure dans la bootloader, il peu être lilo ou grub (il en existe peuêtre d'autre, mais la solution sera du même ordre).

Celui-ci permet au kernel de savoir qu'elle partition accueil les bases du système. En général il s'agit de la partition ' / '.
On retrouve cette config dans le fstab qui ne peu pas encore être lu par le kernel : il ne sait pas encore où le trouver.

Cette partition doit donc être désigné avec les notation du kernel, cad /dev/hdxy, ou /dev/sdxy, /dev/mdx, /dev/ramx ...

On retrouve donc ce paramètre dans le fstab, le même doit être utilisé.

un exemple pour grub :
Code:

title=Gentoo
root (hd0,0)
kernel /vmlinuz root=/dev/hda3 # <-- c'est ici


Un exemple pour lilo :
Code:

image=/vmlinuz
  label=gentoo
  read-only
  root=/dev/sda1  # <-- c'est ici



Dans le cas ou ' / ' est sur un raid, on doit passer le partition raid : /dev/md0 par exemple.

II - Le système de fichiers n'est pas reconnu par le kernel

Lors de l'installation, il a fallu formater son ' / ' et donc choisir un système de fichiers. Et le driver de celui-ci doit être en dur dans le kernel (pas de modules : le kernel ne peu pas encore aller lire les fichiers des modules !!)

Pour ajouter le support de votre fs :
Avec make menuconfig ça se trouve ici :
Code:

File systems -->


Vérifié d'avoir un <*> devant votre fs (pas de [M] !!! c'est pour le mettre en modules)

Il faudra ensuite enregistrer la config et recompiler & installé comme expliquer dans le handbook.


III - le contrôleur du disque dur n'est pas reconnu par le kernel

Là, il est un peu plus dur de localiser le bon driver.
Pour cela : lspci il permettra de nommer le matériel présent dans votre machine et donc, vous pourrez soit localisé le bon driver dans le kernel ou effectuer une recherche rapide sur internet pour savoir quel driver utiliser.

Sinon, dans le kernel, les driver pour les disque dur ce trouvent ici :
Code:

Device Drivers  --->
   Block devices  --->
   ATA/ATAPI/MFM/RLL support  --->
   SCSI device support  --->


IV - Le raid (si il a) n'est pas chargé par le kernel

Je parle ici pour le raid software, le raid matériel étant sois considérer comme une seul devices, soit dans le même genre que le software.

La première chose a vérifié : la présence des drivers raid dans le kernel :
Code:

Device Drivers  --->
   Multi-device support (RAID and LVM)  --->
      [*] Multiple devices driver support (RAID and LVM)
      <*>   RAID support
# Plus le driver du type de raid : 0, 1, 1+0, 4, 5, 6 ...


Une fois cela vérifié, il faut que le kernel puisse identifier et monter la bonne partition raid.
deux solutions :
-Utilisation de l'autodetection, il faut alors attribuer le flag FD (linux raid autodetect) a chaque partition raid à l'aide de fdisk ou cfdisk.
-Indiquer le plan du raid au kernel via le bootloader
avec grub par exemple (il faut évidement adapter):
Code:

kernel /vmlinuz root=/dev/md0 md=0,/dev/sda1,/dev/sdb1,/dev/hda1

avec lilo (a vérifier)
Code:

root=/dev/md0
append="md=0,/dev/sda1,/dev/sdb1,/dev/hda1"



V - Utilisation d'un / distant avec NFS

Il faut d'abort vérifier que la partition NFS est montable.
puis que le kernel contienne :
Code:

File systems  --->
   Network File Systems  --->
      <*> NFS file system support
      [*]   Provide NFSv3 client support (ou NFSv4)
      [*] Root file system on NFS # cette option sera dispo uniquement si il y a :
Networking  --->
   Networking options  --->
      [*]   IP: kernel level autoconfiguration
# qui est essentiel pour un boot sur un / distant.


ps : Oublier pas de lire les posts suivants.


Last edited by BuBuaBu on Tue Jul 11, 2006 11:01 am; edited 2 times in total
Back to top
View user's profile Send private message
El_Goretto
Moderator
Moderator


Joined: 29 May 2004
Posts: 3169
Location: Paris

PostPosted: Mon Jul 10, 2006 9:19 pm    Post subject: Re: [first-aid] kernel panic - not syncing: VFS: unable to m Reply with quote

BuBuaBu wrote:

I - L'argument [b]root=... passé au kernel[/b]

Raaaah,, gggnnnh... je.... aaaaah.... j'arrive pas .... à résister.... hhuuuuuu...

"Trop gros, passera jamais :)"

Raaaah, ça va mieux laaaaa...
Désolé, fallait vraiment que je la fasse... J'aurais pas pu dormir cette nuit sinon.
Et je m'auto lapiderai à coup de parpaing à mon reveil pour flagrant délit de pollution de howto.... :roll:
_________________
-TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT)
Back to top
View user's profile Send private message
PabOu
Veteran
Veteran


Joined: 11 Feb 2004
Posts: 1088
Location: Hélécine - Belgium

PostPosted: Tue Jul 11, 2006 9:16 am    Post subject: Reply with quote

Sur IRC, il y a quelques jours, nous avons eu un problème similaire, et la solution devait prendre en compte 2 des points notés ici.
C'est à dire : l'option root ET/OU le controlleur non supporté.

Il s'agissait en fait d'une carte mère avec 2 controlleurs IDE, et des chipsets différents. Le premier est normal, il va de hda à hdd. Le second, il va de hde à hdh.. C'est déjà beaucoup plus rare ;)

L'installation avec le live-cd gentoo s'est faite sur hdg, et les deux chipsets étaient reconnus.
Mais avec le kernel créé, ca ne bootait pas.

En effet, le support du premier chipset n'a pas été config dans le noyau kernel.. puisqu'il n'était pas utilisé. Résultat, au boot, pas de hda/hdb/hdc/hdd. Et lorsque vient le tour du deuxième chipset à être détecté, les devices ne sont pas hde-->hdh, mais ils prennent la place de hda-->hdd.

Solution : ajouter le support du premier chipset OU modifier l'option root qui est passée au noyau (remplacer hdg par hdc)
_________________
Mangez du poulet !
Back to top
View user's profile Send private message
BuBuaBu
l33t
l33t


Joined: 09 Jul 2005
Posts: 914
Location: France

PostPosted: Tue Jul 11, 2006 11:04 am    Post subject: Reply with quote

@Pabou : une situation similaire met déjà arrivé :
J'ai un contrôleur (FastTrak 378) avec 2 sata et 2 pata.
Les pata étant reconnu sur mon livecd (sda et sdb) mais pas sur mon kernel. Le livecd comportait un patch ...
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum