Gentoo Logo

1.  Installer les sources

Choisir un noyau

Le cœur autour duquel sont bâties toutes les distributions est le noyau (en anglais « kernel ») Linux. Ce noyau est l'interface entre les programmes utilisateur et le matériel. Gentoo offre un choix de plusieurs noyaux à ses utilisateurs. Une liste complète, accompagnée de descriptions, est disponible dans le Guide du noyau Gentoo Linux.

Pour les systèmes ${arch}, vous devez utiliser gentoo-sources.

Choisissez vos sources du noyau et installez-les avec emerge.

Exemple de code 1.1 : installer les sources d'un noyau

# emerge gentoo-sources

Si vous examinez le contenu de /usr/src, vous devriez voir un lien symbolique nommé linux qui pointe vers les sources de votre noyau. L'exemple suivant pointe vers gentoo-sources-${kernel-version}, mais vous aurez sans doute installé une autre version.

Exemple de code 1.1 : examiner le lien symbolique vers le noyau

# ls -l /usr/src/linux
lrwxrwxrwx   1 root   root     12 Oct 13 11:04 /usr/src/linux -> linux-${kernel-version}

Il est maintenant temps de configurer et de compiler votre noyau. Vous pourriez utiliser genkernel qui vous construirait un noyau générique comme celui qui se trouve sur le CD d'installation, mais il n'est pas complètement fonctionnel sur les systèmes PPC64 actuellement.

Continuez donc la lecture avec la Configuration manuelle.

1.  Configuration manuelle

Introduction

Configurer un noyau est parfois considéré comme la tâche la plus ardue que les utilisateurs de Linux doivent accomplir. Rien n'est moins vrai... Après avoir configuré quelques noyaux, vous ne vous rappellerez même plus que c'était difficile ;)

Toutefois, une chose est vraie : vous devez connaitre votre système pour configurer manuellement un noyau. La majeure partie de cette information peut être obtenue en utilisant la commande lspci qui est dans le paquet pciutils (emerge pciutils). Vous pourrez désormais utiliser lspci depuis votre environnement en chroot. Vous pouvez ignorer les avertissements pcilib (comme par exemple : pcilib: cannot open /sys/bus/pci/devices) que vous obtiendrez avec lspci. Vous pouvez également exécuter lspci depuis un environnement non chrooté. Le résultat est le même. Vous pouvez également exécuter lsmod pour voir les modules du noyau utilisés par le CD-ROM d'installation (ce qui peut vous donner des indices sur les fonctionnalités nécessaires).

Exemple de code 1.1 : lancer menuconfig

# cd /usr/src/linux
(Important : si vous êtes dans un environnement 32 bits, vous
devez modifier le Makefile dans /usr/src/linux et changer l'option
CROSS_COMPILE en CROSS_COMPILE ?= powerpc64-unknown-linux-gnu-. Vous devez
faire ceci avant de lancer make menuconfig sinon vous risquez d'avoir des
problèmes lors de la compilation.)
# make menuconfig

Plusieurs sections d'options de configuration s'afficheront. Nous allons d'abord dresser la liste de certaines options que vous devez activer (sinon, Gentoo ne fonctionnera pas ou, du moins, pas sans quelques réglages additionnels).

Activer les options requises

Allez à la section File Systems et activez le support nécessaire pour les systèmes de fichiers que vous utilisez. Ne compilez pas le système de fichiers que vous utiliser comme système de fichiers racine sous forme de modules, sinon votre système Gentoo ne pourra pas monter vos partitions. Activez aussi /proc file system et Virtual memory et /dev/pts file system for Unix98 PTYs.

Exemple de code 1.1 : activer le support pour les systèmes de fichiers

File systems --->
  [*] Virtual memory file system support (former shm fs)
  [*] /proc file system support
  [*] /dev/pts file system for Unix98 PTYs

 (Sélectionnez le(s) système(s) de fichiers dont vous avez besoin.)
  <*> Reiserfs support
  <*> Ext3 journalling file system support
  <*> JFS filesystem support
  <*> Second extended fs support
  <*> XFS filesystem support

Note : vous trouverez certaines des options mentionnées dans la partie Pseudo filesystems qui est une sous-partie de File systems.

Si vous utilisez PPPoE ou un modem classique pour vous connecter à Internet, vous aurez besoin des options du noyau suivantes (vous trouverez les options mentionnées ici dans Networking support qui est une sous-partir de Device Drivers) :

Exemple de code 1.1 : sélection des pilotes PPPoE

Network device support --->
  <*> PPP (point-to-point protocol) support
  <*>   PPP support for async serial ports
  <*>   PPP support for sync tty ports

Les deux options de compression ne vous feront pas de mal, mais ne sont pas absolument nécessaires. L'option PPP over Ethernet n'est pas obligatoire non plus, considérant qu'elle pourrait n'être utilisée que par ppp lorsque ce dernier est configuré pour utiliser PPPoE en mode noyau.

Si vous en avez besoin, n'oubliez pas d'ajouter le support pour votre carte Ethernet.

Enusuite sélectionnez Maintain a devtmpfs file system to mount at /dev de façon que vos périphériques de fichiers critiques soient disponibles très tôt dans le processus de démarrage.

Exemple de code 1.1 : Enabling devtmpfs support

Device Drivers --->
  Generic Driver Options --->
    [*] Maintain a devtmpfs filesystem to mount at /dev
    [ ]   Automount devtmpfs at /dev, after the kernel mounted the rootfs

Lorsque vous aurez terminé la configuration de votre noyau, poursuivez avec la section Compiler et installer.

Compiler et installer

Maintenant que votre noyau est configuré, il est temps de le compiler et de l'installer. Quittez la configuration et lancez la compilation :

Exemple de code 1.1 : compiler le noyau

(Apple/IBM)  # make && make modules_install

Lorsque la compilation est terminée, copiez l'image du noyau dans /boot.

Exemple de code 1.1 : installer le noyau

(Apple/IBM)  # cp vmlinux /boot/${kernel-name}

Maintenant, poursuivez votre lecture avec Configurer les modules.

1.  Kernel Modules

Configurer les modules

Vous devriez indiquer la liste des modules que vous souhaitez charger automatiquement dans /etc/conf.d/modules. Vous pouvez également ajouter des options aux modules si vous le souhaitez.

Pour dresser la liste des modules disponibles, exécutez la commande find telle qu'indiquée ci-dessous. N'oubliez pas de substituer « <kernel version> » par la version du noyau que vous venez juste de compiler :

Exemple de code 1.1 : Consulter la liste des modules disponibles

# find /lib/modules/<kernel version>/ -type f -iname '*.o' -or -iname '*.ko' | less

Par exemple, pour charger automatiquement le module 3c59x.ko (c'est un pilote pour certaines cartes réseau 3Com), il suffit de renseigner ce module dans le fichier de configuration /etc/conf.d/modules.

Exemple de code 1.1 : Modifier le fichier /etc/conf.d/modules

# nano -w /etc/conf.d/modules
modules_2_6="3c59x"

Poursuivez l'installation avec (Configurer votre système).

Dernière mise à jour le 17 décembre 2013

Résumé : Le noyau Linux est le cœur de toute distribution Linux. Ce chapitre vous explique comment le configurer.

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.