[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: debian minimaliste sur disque dur



Dimanche 29 mai 2005, 11:58:09 CEST, manop a écrit :
> 
> Sylvain Sauvage wrote:
>[...] 
> >Je crois que Cyprien est dans le vrai.
> >
> >Le « pivot_root: no such file or directory » ne signifie pas que c'est
> >pivot_root qui n'est pas trouvé.
> >
> >Les messages d'erreur ont la forme "<programme en cours>: message".
> >Ici, pivot_root indique le programme qui génère l'erreur.
> >(On le remarque aussi après : « /sbin/init:... file » :
> > - processus principal : init ;
> > - processus fils d'init : n°431 ;
> > - message : /dev/console ne peut être ouvert ;
> > - explication du message : pas de fichier /dev/console. )
> >
> >Donc, ce qui se passe, c'est que pivot_root ne trouve pas un des
> >fichiers qu'il utilise.
> >
> >Il faut vérifier le fichier exécuté par l'initrd (de mémoire /linuxrc),
> >regarder quels sont les paramètres de pivot_root et vérifier que ces
> >fichiers existent ou qu'il y a bien une commande précédente qui les
> >crée (vérifier notamment pour la redirection de la sortie standard vers
> >/dev/console que /dev/console existe).
> >
> >pivot_root, comme son nom l'indique, permet de passer du ramdisk au
> >vrai disque root (le / quoi), le fichier qui manque est peut-être
> >simplement le device pour le root.
> >
> >  
> >
> Merci pour toutes ces explications !
> 
> Pourtant quelques points confus subsistent:
> - je croyais que le kernel aller créer les devices dans /dev
>   ma question: le kernel crée-t-il les devices, pas tous ?
>   (le kernel s'attend-il à avoir le fichier /dev/console, qu'il branche 
> alors avec je ne sais quoi...)

Il les crée après (le démarrage se fait en différentes phases).
Avant le pivot_root, le / est celui de l'initrd (le fichier initrd est une
image d'une partition en cramfs qui sera montée en mémoire), les devices
sont donc ceux du /dev de cette image. À partir du pivot_root, la
partition utilisée pour le / est bien celle du disque.
Cette partition doit posséder un minimum de devices dans son /dev.
devfs ou udev ne peuvent intervenir que plus tard.

<PARTIE IMPORTANTE>

Donc, pour régler ton problème, tu dois créer quelques devices dans ton
/dev.
Le plus simple est de lancer la commande 'MAKEDEV generic' depuis le
répertoire /dev de ton futur système. Cela créera un tas de devices mais,
au moins, on est à peu près sûr qu'il aura ceux dont il a besoin au
démarrage.

</PARTIE IMPORTANTE>

> - qu'est ce que le device pour le root ?

Le device de la partition / (/dev/hda# ou autre).

> Je ne sais pas comment connaitre les paramètres de pivot_root (faut-il 
> voir le code de init ?)
> Le kernel que j'ai employé est celui donné par le package debian.

Donc l'initrd est correct. Le problème se situe alors dans le / de ton
système.

> Faut-il compiler obligatoirement un kernel avec des paramètres 
> spécifiques (par exemple pour pivot_root).

Non.

-- 
Sylvain Sauvage



Reply to: