Pourquoi faire ?
J’ai dû recompiler un noyau pour accéder aux modules raw1394 et consort (plus accessible depuis la version 2.6.22 du kernel si j’ai bonne mémoire).
Or, l’installation d’un noyau maison ne déclenche pas la "fabrication" du initrd.img correspondant malgré l’indication claire dans le fichier kernel-img.conf qui se situe dans le répertoire /etc et qui contient la ligne do_initrd = yes.
Probablement dû au fait que le système cherche la commande mkinitrd.
Cet initrd.img est lié au chargement des modules du noyau, aussi faite bien cette opération en fin de compilation du noyau après la création des modules.
mkinitrd ???
Sur pratiquement toute la littérature trouvée sur internet sur le sujet : Il est proposer d’utiliser la commande mkinitrd qui semble faite pour cela.
Malheureusement, cette commande a disparu dans la Debian testing/sid actuelle. Alors comment faire ?
Il y a bien le paquet yaird qui semble convenir mais il ne prend pas en charge les modules 1394.
mkinitramfs
Heureusement, certaines docs parlaient également de la piste mkinitramfs mais là, il a fallu regarder les man page pour en savoir plus.
Bref, après quelques temps de recherche, j’ai trouvé la commande idoine : update-initramfs
Cette commande se trouve dans le paquet initramfs-tools de la Debian.
Je vous conseille de lire la man page correspondant à cette commande. Bien qu’en anglais, elle est assez claire et les options sont simples à comprendre.
Utilisation
Dans un terminal en mode superutilisateur (su+ mot de passe root), tapez :
update-initramfs -c -k 2.6.24-mjk [1]
Options : -c pour créer et -k pour préciser la version du noyau.
L’avantage de la commande : vous la faite d’où vous voulez et cela créé l’initrd.img directement dans votre répertoire /boot. Inutile de perdre son temps à taper le bon chemin comme avec yaird ou mkinitrd.
N’oubliez pas de modifier la liste de GRUB
Si vous ne le faite pas : vous aurez encore un kernel panic !!! alors que votre initrd sera bien créé. Dans un terminal, en mode super utilisateur : allez dans le répertoire /boot/grub et modifier les entrées de votres nouveau noyau comme suit :
Il faut ajouter la dernière ligne.
Bien sûr, ceci AVANT tout redémarrage avec le nouveau noyau.
