Red Hat Enterprise Linux 3: Guide d'administration système | ||
---|---|---|
Précédent | Annexe A. Création d'un noyau personnalisé | Suivant |
Pour construire un noyau personnalisé (effectuez toutes les étapes suivantes en étant connecté en tant que super-utilisateur) :
![]() | Remarque |
---|---|
Cet exemple utilise la version de noyau 2.4.21-1.1931.2.399.ent (la version de noyau peut être différente). Pour identifier la version de votre noyau, entrez la commande uname -r et remplacez 2.4.21-1.1931.2.399.ent par la version de noyau renvoyée par cette commande. |
Ouvrez l'invite du shell et allez dans le répertoire /usr/src/linux-2.4/. Dorénavant, toutes les commandes doivent être exécutées à partir de ce répertoire.
Il est important d'avoir une arborescence source dont vous connaissez la condition lorsque vous vous lancez dans la construction d'un noyau. Il est par conséquent recommandé de commencer par la commande make mrproper afin de supprimer tous les fichiers de configuration et toutes les traces des constructions précédentes qui pourraient se trouver dans l'arborescence source. Si vous avez déjà un fichier de configuration nommé /usr/src/linux-2.4/.config, sauvegardez-le dans un répertoire différent avant d'exécuter cette commande et recopiez-le ensuite.
Il est recommandé d'utiliser comme point de départ, la configuration du noyau Red Hat Enterprise Linux par défaut. Pour ce faire, copiez le fichier de configuration de l'architecture du système du répertoire /usr/src/linux-2.4/configs/ à /usr/src/linux-2.4/.config. Si le système a plus d'un processeur, copier le fichier contenant le mot clé smp. Toutefois, si le système à plus de quatre giga-octets de mémoire, copiez le fichier contenant le mot-clé hugemem.
Personnalisez ensuite les paramètres. Il est recommandé d'utiliser la méthode consistant à exécuter la commande make xconfig pour lancer le programme de configuration du noyau, Linux Kernel Configuration. Le système X Window n'est pas requis.
Après avoir terminé la configuration, sélectionnez Quitter, puis Oui afin d'enregistrer le nouveau fichier de configuration du noyau (/usr/src/linux-2.4/.config).
Même si aucun changement n'a été apporté aux paramètres, il est nécessaire d'exécuter la commande make menuconfig (ou l'une des autres méthodes utilisées pour la configuration du noyau) avant de continuer.
Parmi les autres méthodes utilisées pour la configuration du noyau figurent :
make config — Un programme interactif en mode texte. Les composants sont présentés de façon linéaire et les réponses aux questions les concernant sont fournies sur une base individuelle. Cette méthode ne nécessite pas l'utilisation du système X Window et ne permet pas de revenir en arrière pour modifier les réponses apportées aux questions précédentes.
make xconfig — Cette méthode nécessite le système X Window et le paquetage tk. Elle n'est pas recommandée car elle n'analyse pas la syntaxe des fichiers de configuration de manière suffisamment fiable.
make oldconfig — Ce script non-interactif lit les fichiers de configuration existants (.config) et demande seulement des réponses à toutes les nouvelles questions qui n'existaient pas précédemment.
![]() | Remarque |
---|---|
Pour utiliser kmod et les modules de noyau, répondez Yes à kmod support et module version (CONFIG_MODVERSIONS) support lors de la configuration. |
Après avoir créé un fichier /usr/src/linux-2.4/.config, utilisez la commande make dep pour définir correctement toutes les dépendances.
Utilisez la commande make clean pour préparer l'arborescence source en vue de la construction.
Il est recommandé de donner au noyau personnalisé un numéro de version modifié afin d'éviter que le noyau existant ne soit écrasé. La méthode décrite ici est celle dont la récupération est la plus simple en cas de problèmes. D'autres possibilités sont décrites en détails à l'adresse suivante : http://www.redhat.com/mirrors/LDP/HOWTO/Kernel-HOWTO.html ou dans le fichier Makefile de /usr/src/linux-2.4/.
Par défaut, /usr/src/linux-2.4/Makefile comporte le mot custom à la fin de la ligne commençant par EXTRAVERSION. En ajoutant un élément à la chaîne, il est possible d'avoir en même temps sur le système, l'ancien noyau en fonctionnement et le nouveau noyau (version personnalisée 2.4.21-1.1931.2.399.ent).
Si le système contient plus d'un noyau personnalisé, il est recommandé d'ajouter la date à la fin (ou tout autre identificateur).
Pour les architectures x86, AMD64 et Intel® EM64T, construisez le noyau à l'aide de make bzImage. Pour l'architecture Itanium, construisez le noyau à l'aide de make compressed. Pour les architectures S/390 et zSeries, construisez le noyau à l'aide de make image. Pour les architectures iSeries et pSeries, construisez le noyau à l'aide de make boot.
Construisez les modules que vous avez configurés à l'aide de make modules.
Utilisez la commande make modules_install pour installer les modules de noyau (même si vous n'en avez construit aucun). Notez le caractère de soulignement (_) dans la commande permettant de donner l'instruction d'installer les modules de noyau dans le chemin du répertoire /lib/modules/<KERNELVERSION>/kernel/drivers (où KERNELVERSION correspond à la version spécifiée dans Makefile). Dans cet exemple, il s'agirait donc de /lib/modules/2.4.21-1.1931.2.399.entcustom/kernel/drivers/.
Utilisez make install pour copier votre nouveau noyau ainsi que les fichiers qui lui sont associés dans les répertoires appropriés.
Outre l'installation des fichiers de noyau dans le répertoire /boot, cette commande exécute également le script /sbin/new-kernel-pkg qui construit une nouvelle image initrd et ajoute de nouvelles entrées au fichier de configuration du chargeur d'amorçage.
Si votre système dispose d'un adaptateur SCSI et que le pilote SCSI a été compilé en tant que module ou si le noyau a été construit avec une prise en charge de ext3 en tant que module (la valeur par défaut de Red Hat Enterprise Linux), l'image initrd est nécessaire.
Même si des modifications sont effectuées au niveau de l'image initrd et du chargeur d'amorçage, vérifiez d'une part qu'elles ont été faites correctement et assurez-vous d'autre part de bien utiliser la version personnalisée du noyau au lieu de 2.4.21-1.1931.2.399.ent. Pour obtenir des instructions sur la manière de vérifier ces modifications, reportez-vous à la Section 39.5 et à la Section 39.6.
Précédent | Sommaire | Suivant |
Création d'un noyau personnalisé | Niveau supérieur | Ressources supplémentaires |