II. Préparation et compilation du noyau▲
II-A. Téléchargement du noyau et du patch▲
Vous devez installer les sources de votre noyau. Si vous voulez avoir le noyau de votre debian, vous devrez taper cette commande en root
su
#saisie du mot de passe root
apt-get install kernel-source-2.6.8
Vous pouvez récupérer les sources d'un noyau tout neuf sur kernel.org. Je vous conseille également le ftp de free [ftp://ftp.free.fr/pub/linux/kernel/v2.6/] qui est plus rapide que le site officiel.
Vous devez également récupérer un patch pour votre version de noyau. Celui utilisé dans ce cas est le patch pour la version 2.6.15
Le patch pour la version 2.6.15 fonctionne pour la version 2.6.16.5.
Vous devez ensuite décompresser l'archive des sources du noyau :
cd /usr/src
tar xvfj /home/user/linux-2.6.16.5.tar.bz2
Les fichiers d'extension .tar.bz2 prennent moins de place et donc moins de temps à télécharger.
Ceci créera un dossier nommé linux-2.6.16.5 dans /usr/src. Vous devez maintenant patcher votre noyau. Cela veut dire que vous allez modifier son contenu en appelant un programme qui se charge de le faire pour vous :
cd /usr/src/linux-2.6.16.5/
patch -Np1 -i /home/user/bootsplash-3.1.6-2.6.15.diff
Si tout se passe bien, vous ne devriez pas avoir de message d'erreur. Maintenant que le noyau est patché, il faut le configurer et le compiler. Vous avez plusieurs choix pour la configuration. Vous pouvez utiliser le mode console avec :
make menuconfig
ou le mode graphique. Pour lancer le mode graphique, vous devez installer gksu qui vous permettra d'accéder au mode graphique en root (nécessaire pour écrire le fichier de configuration du noyau). En utilisateur non privilégié, vous devrez lancer et entrer le mot de passe root le moment venu :
# pour accéder à l'interface de configuration avec qt
gksu -g make xconfig
# ou pour accéder à l'interface de configuration avec gtk
gksu -g make gconfig
Je ne détaillerai pas toute la configuration dans ce tutoriel, mais seulement celle de bootsplash. Une fenêtre comme celle-ci s'ouvrira pour configurer votre noyau.
Allez dans la section nommée « Device drivers -> Block devices » et sélectionnez « Ram disk support ». Appuyez alors sur « y » que ce soit en mode graphique comme en mode texte. Faites de même sur « Initial RAM disk (initrd) support » qui apparaîtra une fois l'étape précédente réalisée. (Cliquez sur l'image)
Vous devez ensuite activer le framebuffer. Vous devrez aller dans « Device drivers -> Graphics support » et sélectionner « Support for frame buffer devices » en appuyant sur « y ». Une liste défilante apparaîtra dans laquelle vous sélectionnerez « VESA VGA graphics support » en appuyant sur « y ». (Cliquez sur l'image).
Si vous possédez une carte graphique nVidia (r), vous devez désactiver « nVidia Framebuffer Support » et « nVidia Riva support » en raison d'une incompatibilité entre le driver du noyau et le driver officiel téléchargeable sur leur site.
Vous devez ensuite aller dans « Device drivers -> Graphics support -> Console display driver support » et sélectionner « Video mode selection support » et « Framebuffer Console support » en appuyant sur « y ». « Framebuffer Console Rotation » n'est pas obligatoire : c'est pour faire pivoter votre console.
Pour la dernière étape de configuration, vous devez aller dans « Device drivers -> Graphics support -> Bootsplash configuration » et activer « Bootup splash screen » en appuyant sur « y ».
Votre noyau est désormais configuré pour bootsplash ! Fermez la fenêtre et cliquez sur « Save changes ».
II-B. Compilation du nouveau noyau▲
Maintenant, nous allons compiler le noyau. Pour cela, tapez ceci en console :
su
# entrez votre mot de passe root
make
make modules_install
II-C. Installation du noyau▲
Je vous conseille de faire « make modules_install » au lieu de « make install » pour garder le contrôle sur l'installation et ainsi éviter les mauvaises surprises au redémarrage. Ne faites pas l'étape suivante si vous avez fait « make install ».
cp arch/i386/boot/bzImage /boot/vmlinuz-bootsplash
Si vous avez grub, vous devrez copier et modifier certaines lignes de votre /boot/grub/menu.lst. La ligne concernant l'initrd est en commentaire, c'est normal, mais vous devez absolument la mettre !
# lignes d'origine
title Debian GNU/Linux, kernel 2.6.8-2-386
root (hd0,5)
kernel /boot/vmlinuz-2.6.8-2-386 root=/dev/sda6 ro
initrd /boot/initrd.img-2.6.8-2-386
savedefault
boot
# fin des lignes d'origine
# lignes recopiées du dessus et modifiées
title Debian avec bootsplash # à changer
root (hd0,5) # à ne surtout pas changer
kernel /boot/vmlinuz-bootsplash root=/dev/sda6 ro splash=silent # changez le 2.6.8-2-386 en bootsplash
#initrd /boot/initrd.splash # changez le 2.6.8-2-386 en bootsplash
savedefault # à ne surtout pas changer
boot # à ne surtout pas changer
Si vous avez lilo, vous devrez copier et éditer certaines lignes de /etc/lilo.conf
# lignes d'origine
label=Debian2.6.8-2-386
image=/boot/vmlinuz-2.6.8-2-386
initrd=/boot/initrd.img-2.6.8-2-386
root=/dev/sda6
# fin des lignes d'origine
# lignes recopiées du dessus et modifiées
label=Debian-bootsplash # à changer : attention, lilo ne supporte pas les espaces !
image=/boot/vmlinuz-bootsplash # changez le 2.6.8-2-386 en bootsplash
#initrd=/boot/initrd.splash # changez le 2.6.8-2-386 en bootsplash
root=/dev/sda6 # à ne surtout pas changer
append="splash=silent"