[ << ]
[ < ]
[ Sommaire ]
[ > ]
[ >> ]
7. Configurer le noyau
Table des matières :
7.a. Fuseau horaire
Vous devez maintenant choisir votre fuseau horaire afin que votre système sache
où il se trouve. Cherchez votre fuseau horaire dans
/usr/share/zoneinfo, puis configurez-le dans le fichier
/etc/conf.d/clock. Évitez les zones du type
/usr/share/zoneinfo/Etc/GMT*, car leur nom porte à confusion. En
effet, GMT-2 signifie en fait GMT+2.
Exemple de code 1 : Définir l'information relative au fuseau horaire |
# ls /usr/share/zoneinfo
# nano -w /etc/conf.d/clock
TIMEZONE="Europe/Paris"
|
7.b. 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 x86, nous offrons, entre autres, les gentoo-sources
(un noyau modifié par l'ajout de fonctionnalités servant à améliorer les
performances).
Choisissez les sources à utiliser pour votre noyau et installez-les avec
emerge.
Exemple de code 2 : 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-2.6.19-r5, mais vous aurez sans doute installé une autre
version.
Exemple de code 3 : 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-2.6.19-r5
|
Il est maintenant temps de configurer et de compiler votre noyau. Vous pouvez
utiliser genkernel. Cette commande construira un noyau générique tel que
celui utilisé par le CD d'installation. Toutefois, nous expliquerons d'abord la
configuration « manuelle », puisque c'est la meilleure façon
d'optimiser votre environnement.
Si vous souhaitez configurer manuellement votre noyau, poursuivez votre lecture
avec Par défaut : configuration manuelle. Si
vous souhaitez utiliser genkernel, vous devriez plutôt lire Alternative : utiliser genkernel.
7.c. Par défaut : 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 des informations 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).
Maintenant, allez dans le dossier des sources du noyau et exécutez make
menuconfig. Cela ouvrira un menu de configuration basé sur ncurses.
Exemple de code 4 : Lancer menuconfig |
# cd /usr/src/linux
# 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
Avant toute chose, activez l'utilisation du code et des pilotes en
développement ou expérimentaux. C'est absolument nécessaire ; si vous ne le
faites pas, des options très importantes ne seront pas affichées.
Exemple de code 5 : Sélectionner le code et les pilotes expérimentaux |
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
|
Veuillez vérifier que tous les pilotes nécessaires au démarrage de votre
système tels que le pilote de votre carte SCSI sont compilés en dur et non
comme modules.
Vérifiez que vous compilez votre noyau pour le bon type de processeur :
Exemple de code 6 : Sélectionner le type de processeur |
Processor type and features --->
(Athlon/Duron/K7) Processor family
|
Allez à la section File Systems et activez le support nécessaire pour
les systèmes de fichiers que vous utilisez. Ne les compilez pas sous
forme de modules, sinon votre système Gentoo ne pourra pas monter vos
partitions. Activez aussi Virtual memory et /proc file system.
Exemple de code 7 : Activer le support pour les systèmes de fichiers |
File systems --->
Pseudo Filesystems --->
[*] /proc file system support
[*] Virtual memory file system support (former shm fs)
<*> Reiserfs support
<*> Ext3 journalling file system support
<*> JFS filesystem support
<*> Second extended fs support
<*> XFS filesystem support
|
N'oubliez pas d'activer le support DMA pour vos disques :
Exemple de code 8 : Activer le support DMA |
Device Drivers --->
ATA/ATAPI/MFM/RLL support --->
[*] Generic PCI bus-master DMA support
[*] Use PCI DMA by default when available
|
Si vous utilisez PPPoE ou un modem classique pour vous connecter à Internet,
vous aurez besoin des options du noyau suivantes :
Exemple de code 9 : Sélection des pilotes PPPoE |
Device Drivers --->
Networking 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.
Si vous avez un microprocesseur Intel qui supporte la technologie
HyperThreading™ ou si vous avez un système à plusieurs CPU, vous devriez
activer « Symmetric multi-processing support ». Notez que chaque
cœur compte pour un processeur.
Exemple de code 10 : Activer le support pour SMP |
Processor type and features --->
[*] Symmetric multi-processing support
|
Si vous utilisez des périphériques d'entrée USB (un clavier ou une souris par
exemple), n'oubliez pas les options suivantes :
Exemple de code 11 : Activer le support USB pour des périphériques d'entrée |
Device Drivers --->
USB Support --->
<*> USB Human Interface Device (full HID) support
|
Si vous voulez utiliser le PCMCIA sur votre portable, n'oubliez pas d'activer
le support pour le type de carte PCMCIA de votre système.
Exemple de code 12 : Activer le support PCMCIA |
Bus options (PCI, PCMCIA, EISA, MCA, ISA) --->
PCCARD (PCMCIA/CardBus) support --->
<*> PCCard (PCMCIA/CardBus) support
<*> 16-bit PCMCIA support
[*] 32-bit CardBus support
--- PC-card bridges
<*> CardBus yenta-compatible bridge support (NEW)
<*> Cirrus PD6729 compatible bridge support (NEW)
<*> i82092 compatible bridge support (NEW)
<*> i82365 compatible bridge support (NEW)
<*> Databook TCIC host bridge support (NEW)
|
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 13 : Compiler le noyau |
# make && make modules_install
|
Lorsque la compilation est terminée, copiez l'image du noyau dans
/boot. Nommez votre noyau comme bon vous semble, mais retenez le
nom que vous lui donnez, car vous devrez l'utiliser quand vous configurerez votre
chargeur de démarrage. N'oubliez pas de remplacer kernel-2.6.19-gentoo-r5 par le nom et la version de votre noyau.
Exemple de code 14 : Installer le noyau |
# cp arch/i386/boot/bzImage /boot/kernel-2.6.19-gentoo-r5
|
Maintenant, poursuivez votre lecture avec Les
modules du noyau.
7.d. Alternative : utiliser genkernel
Si vous lisez cette section, vous avez choisi d'utiliser le script
genkernel pour configurer votre noyau pour vous.
Maintenant que l'arbre des sources de votre noyau est installé, il est temps de
compiler ce noyau à l'aide du script genkernel qui construira
automatiquement un noyau dont la configuration sera presque identique à celle
du noyau du CD d'installation. Cela signifie que si vous utilisez
genkernel pour construire votre noyau, votre système détectera
généralement tout votre matériel au moment de l'amorçage, à la manière du CD
d'installation. Puisque genkernel ne requiert aucune configuration manuelle, il
s'agit d'une solution idéale pour l'utilisateur rebuté par l'idée de compiler
son propre noyau.
Maintenant, voyons comment utiliser genkernel. D'abord, installez
genkernel comme suit :
Exemple de code 15 : Installer genkernel |
# emerge genkernel
|
Puis, copiez les fichiers de configuration utilisés par le CD d'installation
vers le répertoire qui sera utilisé par genkernel.
Exemple de code 16 : Copier la configuration du noyau du CD |
# zcat /proc/config.gz > /usr/share/genkernel/x86/kernel-config-2.6
|
Ensuite, compilez les sources du noyau en exécutant genkernel all.
Puisque genkernel compile un noyau qui supporte presque n'importe quel
matériel, ne soyez pas surpris que la compilation demande un temps
considérable.
Veuillez noter que si votre partition de démarrage utilise un autre système de
fichiers qu'ext2 ou ext3, vous devrez peut-être compiler le support pour ce
système de fichiers dans le noyau (donc pas comme module) avec la commande
genkernel --menuconfig all. Si vous utilisez EMVS2 ou LVM2, vous voudrez
sans doute ajouter les options --evms2 ou --lvm2.
Exemple de code 17 : Exécuter genkernel |
# genkernel all
|
Lorsque genkernel aura fini son travail, un noyau, un ensemble complet
de modules et un « initial root disk » (initrd) auront été créés. Le
noyau et l'initrd seront utilisés plus tard lors de la configuration du
chargeur de démarrage. Notez bien les noms du noyau et du initrd puisque vous
devrez les spécifier lors de l'écriture du fichier de configuration du chargeur
de démarrage. L'initrd sera démarré immédiatement après l'amorçage afin de
réaliser l'autodétection du matériel (tout comme pour le CD d'installation)
avant que votre « véritable » système ne démarre.
Exemple de code 18 : Vérifier les noms de l'image du noyau et du fichier initrd |
# ls /boot/kernel* /boot/initramfs*
|
7.e. Les modules du noyau
Configurer les modules
Vous devriez indiquer la liste des modules que vous souhaitez charger
automatiquement dans /etc/modules.autoload.d/kernel-2.6. 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 2.6.19-r5 par la version du noyau que vous venez juste de
compiler :
Exemple de code 19 : Consulter la liste des modules disponibles |
# find /lib/modules/2.6.19-r5/ -type f -iname '*.o' -or -iname '*.ko'
|
Par exemple, pour charger automatiquement le module 3c59x.o,
spécifiez-le dans le fichier kernel-2.6.
Exemple de code 20 : Modifier le fichier /etc/modules.autoload.d/kernel-2.6 |
# nano -w /etc/modules.autoload.d/kernel-2.6
|
Exemple de code 21 : Exemple de fichier /etc/modules.autoload.d/kernel-2.6 |
3c59x
|
Poursuivez l'installation avec Configurer
votre système.
[ << ]
[ < ]
[ Sommaire ]
[ > ]
[ >> ]
Ce document est protégé par la licence Creative
Commons : Paternité - Partage des Conditions Initiales à
l'Identique 2.5.
|