Vous êtes sur la page 1sur 16

Compiler le noyau Linux

Ralis par : Ait taleb brik El maidani ilyas parrain par : Mr Ezzati

Le noyau :

Le noyau est le cur du systme. C'est lui qui fait l'interface entre vos applications et votre matriel. Par exemple, il gre la mmoire, donne l'ordre d'excution des tches sur le(s) processeur(s), interagit avec vos priphriques via les pilotes matriels (souris, claviers, etc), s'occupe du rseau, ...
Le noyau (kernel en anglais) est compos d'une partie statique laquelle on peut dynamiquement greffer des modules. La partie statique est utilise lors du dmarrage de votre ordinateur et sera toujours charge en mmoire, tandis que les modules peuvent tre chargs seulement une fois la machine dmarre et uniquement en cas de besoin.

Pourquoi Compiler son noyau ?

Cas du matriel dont le support a t ajout dans une nouvelle version du noyau.

un trou de scurit a t dcouvert dans le noyau actuel, ce problme tant rgl dans une nouvelle version.
disposer d'une fonctionnalit qui n'est pas encore dans la branche principale du noyau. La plupart du temps, on na pas rellement besoin d'un nouveau noyau. Il serait suffisant de rester jour avec votre distribution puisque celle-ci s'occupe des logiciels qui ont des problmes de scurit ou des bugs.

Connatre la version de son kernel :


#uname r : affiche le numro du version du noyau . #uname a : affiche notamment la date de compilation du noyau .

Sauvegarde du noyau ,des modules et de la configuration de grub


kernel
#cd /boot #ls vmlinuz* vmlinuz-2.6.9-42.EL #mv vmlinuz-2.6.9-42.EL vmlinuz-2.6.9-42.EL.old

Grub
# cp /etc/grub.conf /etc/grub.conf.save

1-Tlcharger le code source du noyau :


Pour pouvoir compiler un nouveau noyau, il faut en tlcharger le code source sur le site http://www.kernel.org/. supposons que nous voulons compiler la version 2.6.21.3 du noyau Linux On commence par dcompresser avec bunzip

# tar xvjf linux-2.6.21.3.tar.bz2

-2. Configurer le noyau :


Nous devons configurer le noyau avant de commencer le compiler. Pendant la phase de configuration, nous slectionnerons les composants qui feront partie de notre futur noyau.
#make menuconfig : invoque l'interface ncurses. D'autres options comme #make xconfig et #make config sont
disponibles.

Une fois que les composants de notre noyau sont choisis, nous pouvons quitter l'interface de configuration. Reste slectionner l'option permettant d'enregistrer la configuation dans le menu de configuration avant de sortir.

-3. Compilation aprs configuration du noyau:


* Construire les dpendances :
Cette tape est requise pour les noyaux antrieurs la srie 2.6 elle consiste crer les dpendances ncessaires. #make dep

* Crer l'image finale


Il est possible de construire divers types d'images binaires de noyau. Nous pouvons compiler une image de noyau complte ou une version compresse de celle-ci ; habituellement, on choisit la version compresse ou l'image bzImage, que l'on peut crer en saisissant : #make bzImage

* Compiler et installer les modules


Si, dans la section configuration, nous avons slectionn des composants devant tre intgrs en tant que modules du noyau, il faut maintenant les compiler. Pour compiler les modules, excutons la commande : # make modules Aprs la compilation des modules, il est prsent temps de les installer. pour ce faire, excutez la commande : #make modules_install

On

peut rassembler tous ces commandes Dans une seule ligne :


# make dep && make clean && make bzImage && make modules && make modules_install

* Amorcer partir du nouveau noyau

L'installation des modules termine, nous pouvons entreprendre une procdure d'installation automatique du noyau pour l'excutable du noyau. Saisissons simplement : #make install Cette commande permet de mettre jour l'image du noyau dans le rpertoire /boot, d'actualiser le fichier de configuration du chargeur d'amorage (lilo.conf ou grub.conf), puis d'effectuer les actions ncessaires pour rendre le nouveau noyau amorable.

4-Installer manuellement le noyau

Au cas o make install ne fonctionne pas ou si pour toute autre raison, nous ne pouvons pas effectuer une installation automatique, il faut envisager une installation manuelle du noyau. Voici les tapes suivre en tant que super-utilisateur si nous faisons appel au chargeur d'amorage lilo :

#cp -a arch/i386/boot/bzImage /boot/bzImage-2.6.9 Aprs cette commande, ajoutons la ligne suivante dans /etc/lilo.conf :
#image=/boot/bzImage-2.6.9 label=2.6.9-kernel root=votre_partition_racine

Merci pour votre attention