Linux - Gentoo - Mise à jour de noyau

Décembre 2016



Introduction


Le noyau fait partie de la minorité de package au niveau de la distribution Gentoo qui requiert une intervention manuelle pour compléter la mise à jour.
Le portage se charge de télécharger et installer le code source du noyau, la compilation pour la prise en charge des modifications est une opération manuelle.

Pourquoi mettre à jour le noyau


La mise à jour du noyau se fait essentiellement pour :
  • bénéficier des mises à jour relatives aux pilotes
  • se protéger contre les vulnérabilités de sécurité
  • maintenir à jour un système stable

Il est toujours préconisé de mettre à jour le noyau régulièrement comme tâche de maintenance.

Utilisation de Portage pour obtenir les nouvelles sources


La mise à jour des sources du noyau au niveau de la distribution Gentoo se fait comme tout autre package en utilisant l’utilitaire emerge.
Pour mettre à jours les sources il faut lancer :
#emerge –u gentoo-sources

Les packages seront installés sous /usr/src.

Mise à jour du lien symbolique /usr/src/linux


Gentoo a besoin que le lien sybolique /usr/src/linux pointe sur les sources du noyau utilisé. Le portage met à jour automatiquement le lien symbolique mais il faut manuellement le symlink flag à la variable USE du fichier de configuration /etc/make.conf.
USE="symlink x86 3dnow 3dnowex X aac aalib adns alsa apache2"

Alternativement, il est possible d’utiliser le packege app-admin/eselect pour modifier le lien symbolique.
Pour ce faire il faut installer le package ensuite, l’utiliser pour changer le lien comme suit
Alternatively, you could use app-admin/eselect to modify the symlink.
(Installer eselect)
# emerge eselect
(Afficher la liste de noyaux disponibles)
# eselect kernel list
Available kernel symlink targets:
  [1]   linux-2.6.27-gentoo-r8 *
  [2]   linux-2.6.27-gentoo-r10
# eselect kernel set 2

Pour vérifier l’application du choix il suffit de vérifier le lien symbolique come suit:
# cd /usr/src
# ln -sfn linux-2.6.9-gentoo-r2 linux

Configuration, compilation et installation du nouveau noyau


Installation automatique via l’outil Genkernel


Il faut commencer par installer l’outil Genkernel :
#emerge genkernel

Ensuite lancer l’installation :
#genkernel all

Il est aussi d’invoquer la commande genkernel avec des options supplémentaires pour la mise à jour de grub :
# genkernel --menuconfig --bootloader=grub all

Installation manuelle


Il faut commencer par lancer l’utilitaire de configuration du noyau
# cd /usr/src/linux
# make menuconfig

Il faut choisir les options requises pour le matériel et l’environnement du système.
Il existe un guide très complet pour vous aider à vous en sortir avec la configuration du noyau.
C'est un livre téléchargeable librement: Linux kernel in a nutshell (en)

Ensuite, il faut compiler le noyau et le copier dans la partition de démarrage. Si /boot représente une partition à part il faut commencer par la monter avant de copier le noyau :
# make && make modules_install
# mount /boot
# cp arch/i386/boot/bzImage /boot/bzImage-2.6.9-gentoo-r2

Enfin, il faut mettre à jour le chargeur de demurrage, en ajoutant la reference au nouveau noyau.

Reinstallation de modules externs


Si le noyau integer des modules externs, il faut les reinstaller après avoir mis à jour le noyau.

Redémarrer avec le nouveau noyau


Terminer tous le processus et redémarrer.

Utiliser different noyaux


¨Pour utiliser différents noyaux, il suffit de laisser au niveau du repertoire /usr/src/ les sources du noyau et le fichier binairebzImage au niveau de /boot.
Ensuite, il faut configurer le chargeur de démarrage en ajoutant une référence permettant de charger les noyaux présents.

Supprimer l’ancien noyau


Il possible d’utiliser l’outil emerge pour supprimer toutes les anciennes versions du noyau en lançant:
# emerge -P gentoo-sources 

Il reste ensuite à supprimer les fichiers relatifs aux anciens noyaux sous le répertoire usr/src en utilisant la commande rm.

A voir également :

Ce document intitulé «  Linux - Gentoo - Mise à jour de noyau  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.