Les noyaux sont une des rares catégories de paquets logiciels disponibles dans Portage qui nécessitent une invervention manuelle lors des mises à jour. Portage télécharge et installe pour vous les sources du noyau de votre choix, mais vous devez ensuite procéder vous-même à la compilation du noyau afin que ce dernier puisse être utilisé par votre système.
Bien que ce guide soit destiné avant tout aux utilisateurs qui veulent mettre à jour leur noyau, il peut également être utile à ceux qui veulent passer d'un type de noyau à un autre.
De façon générale, mettre à jour un noyau en passant d'une version mineure à une autre plus récente n'amène pas de changement majeur. Les mises à jour du noyau sont habituellement réalisées afin de profiter d'une nouvelle fonctionnalité ou d'un nouveau pilote de périphérique, afin de se protéger contre une faille de sécurité, ou simplement afin de maintenir un système sain et à jour.
Même si vous décidez de ne pas mettre votre noyau à jour chaque fois qu'une nouvelle version est disponible, nous vous recommandons de procéder à des mises à jour de temps à autre. Il est fortement recommandé de mettre à jour votre noyau dès qu'un problème de sécurité est corrigé dans une version plus récente.
La mise à jour des sources d'un noyau se fait de la même façon que la mise à
jour de n'importe quel paquet logiciel : avec le programme
# emerge -Dup world Calculating dependencies ...done! [ebuild U ] sys-kernel/gentoo-dev-sources-2.6.9-r2 [2.6.8-r5]
Vous pouvez alors aller de l'avant et installer la mise à jour :
# emerge -u gentoo-dev-sources
Les sources du noyau seront installées dans un sous-répertoire de
Il est nécessaire d'avoir un lien symbolique nommé
Dans le présent cas, il faut mettre à jour le lien symbolique pour qu'il pointe vers les sources du noyau vers lequel se fera la mise à jour.
# cd /usr/src # ln -sf linux-2.6.9-gentoo-r2 linux
Pour toutes ces étapes, vous pouvez vous référer aux instructions du
Si vous utilisez Genkernel, vous n'avez qu'à répéter les étapes que vous avez effectuées la première fois que vous avez installé votre noyau.
Exécutez Genkernel de façon standard :
# genkernel all
Vous pouvez aussi utiliser des paramètres supplémentaires pour activer
certaines fonctionnalités de Genkernel. Par exemple, si vous souhaitez
préciser quelques options du noyau avec
# genkernel --menuconfig --bootloader=grub all
Pour plus d'information, consultez le
Tout d'abord, ouvrez l'utilitaire
# cd /usr/src/linux # make menuconfig
Choisissez les options requises pour votre matériel et votre environnement. Si
nécessaire, le
Ensuite, compilez votre noyau et copiez-le dans votre partition de démarrage.
Encore une fois, référez-vous aux instructions du Manuel Gentoo, et n'oubliez
pas de monter votre partition
# make && make modules_install # mount /boot # cp arch/i386/boot/bzImage /boot/bzImage-2.6.9-gentoo-r2 # cp System.map /boot/System.map-2.6.9-gentoo-r2
Finalement, vous devriez mettre à jour la configuration de votre chargeur de
démarrage par l'ajout d'une entrée pour votre nouveau noyau. (Ne supprimez pas
tout de suite l'entrée référant à votre ancien noyau !) Démontez la
partition
Si vous utilisez un ou plusieurs modules du noyau qui ne sont pas inclus dans
l'arbre des sources du noyau mais qui sont plutôt fournis par d'autres paquets
logiciels disponibles dans Portage (par exemple, les pilotes graphiques de ATI
ou Nvidia), vous devez réinstaller ces paquets à chaque fois que vous mettez à
jour le noyau. Rien de plus simple, puisque vous n'avez qu'à exécuter à
nouveau la commande emerge que vous aviez utilisée pour installer le paquet en
question. Le chapitre
Maintenant, fermez toutes vos applications et redémarrez votre système. Si vous avez suivi les instructions ci-dessus correctement, vous devriez obtenir une entrée pour votre nouveau noyau dans votre chargeur de démarrage. Choisissez ce nouveau noyau pour amorcer le système.
Votre système devrait alors démarrer sans problème ; vous pouvez ouvrir une session et continuer votre travail comme à l'habitude. Si tout fonctionne, la procédure de mise à jour est alors terminée.
Si vous avez commis une erreur et que votre système n'arrive pas à démarrer
avec votre nouveau noyau, redémarrez le système et amorcez votre ancien noyau.
Vous pouvez alors reprendre la procédure à l'étape de
Vous avez peut-être remarqué que, lors de l'installation des sources de votre nouveau noyau, les sources du noyau existant n'ont pas été supprimées. Cela est volontaire et vous permet d'alterner facilement entre plusieurs noyaux.
Alterner entre plusieurs noyaux ne nécessite rien d'autre que de conserver les
sources dans
Il est fort possible que vous soyez tout à fait satisfait avec votre nouveau
noyau et que vous n'ayez pas besoin de conserver les anciennes versions sur
votre système. Pour supprimer facilement toutes les sources sauf la plus
récente pour un noyau donné, utilisez l'option
# emerge -P gentoo-dev-sources
Dans la plupart des cas, des fichiers temporaires créés pendant la
compilation resteront dans le répertoire source dans
Supprimer les modules utilisés par les anciens noyaux ne cause pas de problème
non plus. Pour ce faire, il vous suffit de supprimer les sous-répertoires
appropriés dans
Finalement, vous pouvez monter votre partition
La rapidité du développement du noyau Linux rend inévitable l'apparition de
problèmes dus aux changements apportés au noyau de version en version. Si
vous éprouvez de tels problèmes avec les versions les plus récentes des