Table des matières

, , , ,

Compilation du noyau Linux

Notes concernant les principales étapes de compilation et d'installation du noyau Linux.

Téléchargement des sources

Souvent les éditeurs proposent des version modifiées du noyau, les sources officielles sont disponibles sur ftp://ftp.kernel.org

Créer le répertoire d'accueil des sources:

yoann@hermes:~$ cd /usr/local/src/
yoann@hermes:/usr/local/src$ sudo mkdir kernels
[sudo] password for yoann: 
yoann@hermes:/usr/local/src$ sudo chown yoann:yoann kernels/
yoann@hermes:/usr/local/src$ cd kernels/

Télécharger et decompresser les sources

yoann@hermes:/usr/local/src/kernels$ ncftp ftp.kernel.org
NcFTP 3.2.2 (Sep 04, 2008) by Mike Gleason (http://www.NcFTP.com/contact/).
 
ncftp / > cd /pub/linux/kernel/v2.6
ncftp /pub/linux/kernel/v2.6 > get linux-2.6.36.4.tar.bz2
ncftp /pub/linux/kernel/v2.6 > exit
yoann@hermes:/usr/local/src/kernels$ tar xjf linux-2.6.36.4.tar.bz2

nomenclature

Les noyaux sont nommés selon la nomenclature suivante: majeur.mineure.revision.patch-LOCAL_VERSION avec:

Configuration des options de compilation

Dans le répertoire des sources lancer la commande

make menuconfig

Sous l'interface de configuration il est possible de rechercher des options. Pour lancer une recherche tape le caractère '/' et le mot clé puis valider. Il y a environ 4000 options de compilation, la recherche est donc un outil précieux. Pour chaque option, une description est disponible (bouton Help).

Les options activées sont enregistrées dans le fichier .config

Compilation

Lancer la compilation en tant qu'utilisateur. La compilation n'a pas besoin des privilèges root pour s'effectuer correctement, il est donc fortement déconseiller de la lancer en tant que root.

Après compilation, on obtient:

Installation

Installation des modules et du noyau se fait via l'utilitaire make. Les options INSTALL_MOD_PATH et INSTALL_PATH permettront de surdéfinir les repertoires d'installation par défaut, dans le cas où le noyau généré ne doit pas être installé sur la machine courante mais sur une cible différente (cas de la compilation croisée).