Parinux a toujours besoin de personnes pour animer ses activités et partager leurs connaisances.
Vous pouvez adhérer à l'association.
Debian : Compiler son kernel sous debian avec make-kpkg
Écrit par Philippe Marsall, pmars [AT] free.fr
1. Prérequis
Les packages suivants sont nécessaires :
- kernel-package
- bin86
- libncurses5-dev
- kernel-package
- contient le programme make-kpkg
- bin86
- assembleur 80x86, insipensable pour recompiler
- libncurses5-dev
- nécessaire pour make menuconfig
2. Marche à suivre
Méthode :
- récupérer un noyau officiel sur le Net. Actuellement sur le site officiel le dernier moyau disponible est le 2.4.7.
- décompresser l'archive dans /usr/src. Une bonne méthode consiste à d'abord créer un répertoire avec le numéro du noyau et de créer un lien symbolique qui pointe dessus.
# pwd
/usr/src
# tar xzvf linux-2.4.7.tar.gz
# mv linux linux-2.4.7
# ln -s linux-2.4.7 linux
3. Explications
Le tarball se décompresse dans linux, qu'on renomme en linux-2.4.7, et on fait ensuite un lien symbolique "linux" qui pointe vers ce répertoire. Comme ça, en procédant de même pour les prochains noyaux, on conservera les sources bien répertoriées avec leur numéros correspondants, et on se contentera de faire pointer le lien symbolique vers la version que l'on souhaite compiler.
Ensuite :
$ cd linux
$ make menuconfig
Choisir les options, le fichier /usr/src/linux/Documentation/Configure.help est incontournable pour cela, on trouve une traduction en français ici
4. Compilation
$ make-kpkg --revision=tolkien.1.0 kernel_image
Cette commande compile le noyau ainsi que les modules et te crée le fichier kernel-image-2.4.7_tolkien.1.0_i386.deb dans le répertoire /usr/src/.
Si on installe une version différente de celle qui est installée, rien a faire. Sinon suivre ces quelques manip de précaution :
$ cd /lib/modules
$ mv 2.4.7 2.4.7_orig
$ cd /boot/
$ mv System.map-2.4.7 System.map-2.4.7_orig
$ mv config-2.4.7 config-2.4.7_orig
$ mv vmlinuz-2.4.7 vmlinuz-2.4.7_orig
Il ne restes plus qu'a installer le nouveau noyau :
$ cd /usr/src/
$ dpkg -i kernel-image-2.4.7_tolkien.1.0_i386.deb
Répondre aux questions (si on ne comprend pas, laisser les réponses par défaut).
Il va installer (ou xxxx est la version du noyau) :
- les modules dans /lib/modules/xxxx/
- /boot/System.map-xxxx
- /boot/config-xxxx
/boot/vmlinuz-xxxx
5. Démarrer sur le nouveau noyau
Enfin, il reste lilo. Debian crée un lien symbolique de la racine vers /boot/vmlinuz-xxxx et renommé l'ancienne entrée en old. taper 'lilo -v' (trés important, cette commande ne sert pas seulement à modifier les entrées, elle sert surtout à installer dans le boot secteur le bon noyau. Autrement dit, meme si on ne change rien dans lilo.conf mais que l'on compile un nouveau noyau, il *faut* lancer la commande lilo).
