Debian logo [inetdoc.LINUX]

5. La compilation & l'installation du nouveau noyau Linux

1.

Quelles sont les commandes de compilation du noyau ? Donner la signification de chacune des commandes.

Voir le support Debian Linux Kernel Handbook.

Pour faciliter les opérations de (dé|ré)installation du noyau, on se propose de construire un paquet Debian de noyau Linux. L'utilisation d'un paquet permet de s'assurer que tous les fichiers nécessaires ont bien été (copiés|supprimés) dans l'arborescence du système.

$ make-kpkg clean
$ fakeroot make-kpkg --initrd kernel_image

2.

Quelles sont les étapes d'installation du noyau compilé ?

Une fois le paquet de noyau construit, il ne reste plus qu'à procéder à l'installation de ce paquet local. Cette étape fait appel à l'outil de gestion de bas niveau des paquets Debian : dpkg. Cette opération nécessite les droits du super-utilisateur.

# pwd
/usr/src
# dpkg -i linux-image-2.6.27_2.6.27-10.00.Custom_amd64.deb

Après cette installation de paquet de noyau on peut valider la liste des paquets correspondant installés.

# dpkg -l linux-image* |grep ^ii
ii  linux-image-2.6-amd64      2.6.26+16            Linux 2.6 image on AMD64
ii  linux-image-2.6.26-1-amd64 2.6.26-5             Linux 2.6.26 image on AMD64
ii  linux-image-2.6.27         2.6.27-10.00.Custom  Linux kernel binary image for version 2.6.27

Pour de plus amples informations, voir le support Debian Linux Kernel Handbook.

3.

Que faut-il faire pour que le gestionnaire de démarrage propose le nouveau noyau compilé lors de l'initialisation du système ?

Voir le support Fonctions réseau du noyau Linux.

En fait, l'opération d'installation du paquet de noyau intègre l'ajout d'une nouvelle entrée dans le gestionnaire de démarrage. Aucune opération supplémentaire n'est donc nécessaire.

on peut tout de même valider la liste des noyaux disponibles dans le gestionnaire de démarrage. Dans le cas de l'emploi du gestionnaire grub avec la distribution Debian GNU/Linux, cette liste est obtenue comme ceci :

# update-grub -v
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /vmlinuz-2.6.27
Found kernel: /vmlinuz-2.6.26-1-amd64
Updating /boot/grub/menu.lst ... done

Une fois toutes ces étapes franchies, il ne reste plus qu'à relancer le système et vérifier que le noyau exécuté est bien celui qui a été recompilé à partir des sources.