Page précédente Page suivante Table des matières

6. Recompiler et patcher son noyau

Recompiler son noyau est une tâche courante sous Linux, cela permet d'adapter celui-ci à de nouvelles caractéristiques de sa machine, ou bien de rajouter des fonctionnalités ou des corrections grâce à des patchs, puisque le principe même de Linux, en constant développement, est de pouvoir profiter quasiment aussitôt des mises à jour faites par les programmeurs.

6.1 Configurer puis compiler son noyau

Tout d'abord pour définir sa configuration, c'est-à-dire déterminer les options que vous voulez utiliser qui seront les plus adaptées à la machine, se positionner dans /usr/src/linux et vous pouvez utiliser 3 commandes différentes :

$make config
     Mode texte. Pose une rafale de question assez peu conviviale
$make menuconfig
     Mode texte couleur. Menu deroulants tres utilisable
$make xconfig
     Tcl/Tk sous X. Pour les mordus de la souris, tres bien aussi

Une fois terminé, il faut effacer les traces des compilations précédentes en faisant :

$make dep; make clean

Enfin la compilation proprement dite débute à la commande :

$make zImage

À ce stade, selon la machine, il faut attendre un peu : (486DX2 66 = 40mn, Pentium 120 = 20mn, Cyrix P166+ = 8 mn, PPro 200 = 4 mn) temps à titre indicatif, mais c'est un bon benchmark :-)

Si certaines parties du noyau sont activées en tant que modules, il faut également les compiler :

$make modules

Puis les installer :

$make modules_install

Récupérer ensuite le noyau dans /usr/src/linux/arch/i386/boot/zImage

Il faut ensuite le copier dans /boot et renommer les éventuels vmlinuz, zImage et autres selon sa convenance.

Éditer éventuellement le fichier /etc/lilo.conf pour rajouter au minimum une entrée pour l'ancien noyau et une pour le nouveau en cas de problème avec celui nouvellement compilé (ça n'est pas si rare !)

Pour finir lancer la commande lilo

rebooter : c'est prêt !

6.2 Appliquer un patch à son noyau

Pour patcher son noyau, la commande patch s'occupe de tout. Ainsi pour ajouter le patch nouveau.pch, se positionner dans /usr/src/linux : $ patch -p1 < nouveau.patch

Pour retirer proprement un patch, il suffit de l'appliquer une nouvelle fois. Le programme propose alors d'enlever les parties correspondantes.


Page précédente Page suivante Table des matières