Les sources du noyau sont à placer dans /usr/src. Il vous faut donc vous placer dans ce répertoire puis y décompresser les sources :
$ cd /usr/src $ mv linux linux.old $ tar xjf /path/to/linux-2.6.1.tar.bz2 |
La commande mv linux linux.old est nécessaire : en effet, vous disposez peut-être déjà des sources d'une autre version du noyau. Cette commande fait en sorte que vous ne les écrasiez pas. Dès l'archive décompressée, vous disposez d'un répertoire linux-<version> ( où <version> désigne le numéro de version du noyau) avec les sources du nouveau noyau. Vous pouvez créer un lien (ln -s linux-<version> linux) pour des raisons de commodité.
Maintenant, les patches. Supposons que vous vouliez effectivement « patcher » (corriger) du 2.6.1 vers le 2.6.3 et avez téléchargé les patches nécessaires pour ce faire : rendez-vous dans le répertoire linux nouvellement créé, puis appliquez les patches :
$ cd linux $ bzcat -dc /path/to/patch-2.6.2.bz2 | patch -p1 $ bzcat -dc /path/to/patch-2.6.3.bz2 | patch -p1 $ cd .. |
De façon générale, passer d'une version 2.6.x à une version 2.6.y requiert que vous appliquiez tous les patches2.6.x+1, 2.6.x+2, ..., 2.6.y dans l'ordre. Pour retourner à la version précédente de 2.6.y à 2.6.x, répétez exactement la même procédure mais en appliquant les patches dans l'ordre inverse et avec l'option -R de patch (Reverse, soit inverse). Ainsi, pour repasser du noyau 2.6.3 au noyau 2.6.1, vous feriez :
$ bzcat /path/to/patch-2.6.3.bz2 | patch -p1 -R $ bzcat /path/to/patch-2.6.2.bz2 | patch -p1 -R |
![]() | Astuce |
|---|---|
Si vous souhaitez tester si un correctif s'appliquera correctement avant de l'appliquer vraiment, ajoutez l'option --dry-run à la commande patch. | |
Ensuite, dans un souci de clarté (et aussi pour s'y retrouver), vous pouvez renommer linux pour refléter la version du noyau et créer un lien symbolique :
$ mv linux linux-2.6.3 $ ln -s linux-2.6.3 linux |
Il est maintenant temps de passer à la configuration. Pour ce faire, placez-vous dans le répertoire des sources :
$ cd linux |