Pages

vendredi 14 septembre 2007

COMPILER UN NOYAU LINUX 2.6

Télécharger le code source du noyau
$ wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2
ou sur debian :
# apt-get install kernel-headers-$(uname -r) kernel-source-$(uname -r)

Décompresser le code source
$ tar xvjf linux-2.6.8.tar.bz2

Nettoyer les anciennes compilations (si besoin)
$ make mrproper

Configurer le noyau
(Cette opération va générer un fichier .config qui contiendra toutes les options paramétrées pour la compilation du nouveau noyau)
$ make menuconfig (ou xconfig ou config)
A noter que si l'on souhaite compiler le noyau avec les mêmes options que son noyau actuel, il suffit de remplacer l'opération précédente par :
$ cp /boot/config- .config
$ make oldconfig # repondre a toute question par entree

Compiler le noyau
$ make bzImage

Compiler les modules
$ make modules

Déplacer le noyau vers /boot
$ cp ./arch/i386/boot/bzImage /boot/vmlinuz-2.6.8-cmp

Déplacer la table de symboles vers /boot
$ cp System.map /boot/System.map-2.6.8-cmp

Installer les modules
$ make modules_install

Créer un fichier "RAM disk" si on n'a pas de disque dur IDE
$ cd /lib/modules/2.6.8
$ mkinitrd -o /boot/initrd-2.6.8-cmp 2.6.8

Configurer GRUB, le chargeur de boot avec le nouveau noyau :

title Debian GNU/Linux, new recompiled kernel
root (hd0,0)
kernel /boot/vmlinuz-2.6.8-cmp root=/dev/hda1 ro
initrd /boot/initrd-2.6.8-cmp
savedefault
boot

Aucun commentaire:

Archives du blog