salut,
l'initrd peut aussi servir à stoker une DSDT (Differentiated System
Description Table) lorsque le bios est buggé. Parfois utile pour gérer
convenablement l'acpi.
a+
f.
Eric DECORNOD wrote:
Le mardi 30 octobre 2007, Pascal Hambourg a écrit :
Je n'en sais pas plus, pour moi c'est de la magie noire
Je sais ce qu'est l'initrd et à quoi il sert dans les grandes lignes.
Dsl, je ne voulais pas vexer, c'était pour éclairer la magie noire...
La magie noire, c'est comment il est fabriqué
Elle est construite par initramfs-tools, yaird ou linux-initramfs-tool
(en gros des variantes de mkinitrd)
La configuration de initramfs-tools par ex. est dans /etc/initramfs-tools/
On peux y choisir/spécifier des modules particuliers à charger avant de
monter /
Par exemple si on veux une / en cryptoloop, il faudra que tout y soit, et
peut-être même scripter la demande de la passphrase pour booter...
(on peux même aller très loin et scripter ce que l'on veux.)
La fabrication est faite entre-autre à partir de /usr/share/initramfs-tools.
et ce qu'il fait exactement.
On peux en général en examiner le contenu en la gunzippant et en la montant en
loopback.
En gros elle est constituée d'un /bin ultra minimal qui permet d'exéctuer le
script shell « init¹ » qui devra notament charger les module présents dans
l'image.
A la fin, elle monte la partition / dans un sous répertoire et puis elle
execute pivot_root pour échanger le / (initrd) avec le / (le vrai) ;
et passe la main à /sbin/init qui se chargera d'interprêter /etc/initab
En gros on pourrait la faire soi-même à la main sans trop de difficultés.
Par exemple celle de KNOPPIX est radicalement différente.
¹: /usr/share/initramfs-tools/init
L'initrd est fabriquée lors de la configuration du paquet car son contenu
dépend du matériel.
Ouais, voilà. Pas très rassurant.
Au contraire, c'est ce qui permet à un « stock-kernel » de démarrer sur
n'importe quel hardware sans inclure tous les modules du noyau possibles et
imaginables (il serait énorme).
Comme cela on charge les modules du noyau dont « on a besoin » pour démarrer.
Je ne compile plus de noyau perso depuis des lustes et lorsque je le fais, je
part du .config debian et je laisse tous les modules. Ensuite c'est
mkinitramfs fait tout le travail pour moi.
De plus on peux inclure busybox dans l'initrd, comme cela si le boot merde, on
dispose de quoi analyser.
(les anxieux, peuvent demander à y inclure d'office tout ce qu'il faut pour
faire des fsck, badblocks & co.)
Cordialement,
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]