Install/fr/Kernel

< Install‎ | fr
Revision as of 00:56, January 3, 2015 by Aramisqc (Talk | contribs)

Configuration et mise en place du noyau

Aucun système Funtoo Linux ne peut fonctionner sans noyau. C'est le cœur du système, son moteur. Le chargeur d'amorçage interpelle ce dernier lors du démarrage. Le noyau sert d'interface entre les composants matériels et il permet l'exécution des différentes applications installées.

Le noyau se doit d'être convenablement configuré afin de prendre en charge les unités de disque, les systèmes de fichiers, les cartes réseau, etc... Les utilisateurs expérimentés de Linux ont la possibilité de choisir un noyau à installer, le configurer et le mettre en place. En fait, c'est la façon traditionnelle d'installer un noyau quand on met en place un système bâti à partir de sources, un système tel Funtoo Linux.

Funtoo Linux a pris en considération les utilisateurs moins expérimentés, voire débutants. C'est pourquoi Funtoo Linux met à la disposition de tous un noyau de type universel. Il s'agit d'un paquet constitué de «ebuilds» qui génèrent automatiquement les modules et le fichier «initramfs» garantissant ainsi un démarrage sans faille et un système capable de conjuguer avec tous les composants matériels. Voyons comment réaliser ceci en toute simplicité et le plus facilement possible.

Les ensembles de paquets

Nous avons abordé le concept des ensembles de paquets à la section Introduction à Portage. En plus de world, il y a aussi system. Cela nous permet donc de mettre le système à jour dans son entièreté avec world ou simplement une partie de celui-ci avec system. Ce dernier ensemble ne regroupe que les paquets formant le système de base.

Le concept des ensembles de paquets ne s'arrête pas là. Nous pouvons l'étendre à d'autres paquets en créant d'autres entités du même genre. Si nous voulons que le noyau ne soit pas mis à jour en même temps que tout le système, nous créons un ensemble que nous nommerons kernel. Le nom n'est pas arbitraire.

L'ensemble Kernel

Pour créer cet ensemble, nous exécutons les commandes suivantes:

(chroot) # mkdir /etc/portage/sets
(chroot) # echo sys-kernel/debian-sources > /etc/portage/sets/kernel

Maintenant indiquons à Portage que nous voulons créer un noyau «universel» et le fichier initramfs. Nous allons installer le noyau debian-sources. Afin que Portage construise le fichier initramfs en même temps qu'il bâtit le noyau, nous utilisons un USE flag conçu à cet effet. Il se nomme binary.

(chroot) # install -d /etc/portage/package.use
(chroot) # echo "sys-kernel/debian-sources binary" >> /etc/portage/package.use/kernel
Note

Nous avons créé un répertoire package.use dans lequel nous avons déposé un fichier contenant le nom du paquet et son USE flag. Nous aurions pu le faire directement dans un fichier du même nom que le répertoire. Voir le manuel man portage.

Les USE flags sont des indicateurs qui nous donnent la possibilité de configurer les options de compilation d'un paquet selon nos besoins exacts. Vous vous familiariserez avec cette fonctionnalité au fur et à mesure que vous utiliserez Funtoo Linux. Le USE flag binary a été créé pour debian-sources ainsi que pour d'autres ebuilds de noyau afin que les nouveaux utilisateurs de Funtoo Linux aient un système opérationnel le plus facilement possible.

Mise en place du noyau

Note

Voir Funtoo Linux Kernels pour une liste complète des noyaux supportés par Funtoo Linux. Nous recommandons debian-sources aux nouveaux utilisateurs.

Important

debian-sources compilé avec le USE flag binary requiert à tout le moins 14GB d'espace libre dans /var/tmp et prend environ 1 heure à être compilé et mis en place quand la machine tourne sur un processeur Intel Core i7.

Installons le noyau:

(chroot) # emerge -1 @kernel
Important

Le paramètre -1 fait en sorte que le paquet déclaré dans l'ensemble kernel, indiqué par @kernel sur la ligne de commande, ne se retrouvera pas dans l'ensemble world. Cela permet d'effectuer la mise à jour du noyau indépendamment des autres paquets constituant le système Funtoo Linux prévenant ainsi que le noyau soit mis à jour en même temps que le système.

La mise en place d'un noyau opérationnel et fonctionnel à l'aide du USE flag binary est à la fois simple et coûteux. C'est coûteux en terme de temps de compilation. Le noyau sera configuré pour soutenir toute la quincaillerie que Linux supporte. Cela prendra beaucoup de temps sur des machines lentes. C'est la raison pour laquelle il est important que la variable MAKEOPTS soit bien initialisée dans /etc/portage/make.conf. Voir la section /etc/make.conf.