This is Gentoo's testing wiki. It is a non-operational environment and its textual content is outdated.

Please visit our production wiki at https://wiki.gentoo.org

Gentoo Linux amd64 Handbook: Installing Gentoo

From Gentoo Wiki (test)
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:AMD64/Full/Installation and the translation is 100% complete.
Sommaire du manuel
Installation
‎À propos de l'installation
Choix du média
Configurer le réseau
Préparer les disques
Installer l'archive stage3
Installer le système de base
Configurer le noyau
Configurer le système
Installer les outils
Configurer le système d'amorçage
Finaliser
Utiliser Gentoo
Introduction à Portage
Les options de la variable USE
Les fonctionnalités de Portage
Scripts d'initialisation systèmes
Variables d'environnement
Utiliser Portage
Fichiers et répertoires
Les variables
Mélanger plusieurs branches logicielles
Outils supplémentaires
Dépôt personnalisé
Fonctionnalités avancées
Configuration du réseau
Bien démarrer
Configuration avancée
Les modules réseau
Sans fil
Ajouter des fonctionnalités
Gestion dynamique


Introduction

Bienvenue

Tout d'abord, bienvenue sur Gentoo. Vous êtes sur le point d'entrer dans le monde du choix et de la performance. Gentoo vous donne toujours le choix. Lors de l'installation de Gentoo, ce qui ressort à plusieurs reprises, c'est que les utilisateurs peuvent choisir ce qu'ils veulent compiler eux-mêmes, comment installer Gentoo, quel système de journalisation utiliser, etc.

Gentoo est une méta-distribution moderne et rapide d'une conception propre et flexible. Gentoo est construite autour du logiciel libre et ne cache rien à ses utilisateurs de ce qui se trouve sous le capot. Portage, le système de gestion des paquets que Gentoo utilise, est écrit en Python, ce qui signifie que l'utilisateur peut facilement visualiser et modifier le code source. Le système de gestion des paquets utilise du code source (bien que la prise en charge de paquets pré-compilés soit également incluse) et la configuration de Gentoo se fait via des fichiers de texte normaux. En d'autres termes, l'ouverture est totale.

Il est très important que tout le monde comprenne que la liberté de choix est ce qui fait vivre Gentoo. Nous essayons de ne pas forcer les utilisateurs à utiliser ce qu'ils n'aiment pas. Si vous pensez différemment, s'il vous plaît, dîtes-le !

Comment s'organise l'installation  ?

L'installation de Gentoo se déroule en dix étapes couvertes par les chapitres suivants. Après chaque étape, le système sera dans un état bien défini  :

Step Result
1 L'utilisateur est dans un environnement prêt pour installer Gentoo.
2 La connexion internet est configurée pour installer Gentoo.
3 Les disque durs sont initialisés pour accueillir l'installation de Gentoo.
4 L'environnement est prêt pour l'installation et l’utilisateur est prêt à chroot dans le nouvel environnement.
5 Les paquets de base, qui sont les mêmes sur toutes les installations de Gentoo, sont installés.
6 Le noyau Linux est installé.
7 L'utilisateur aura paramétré une grande partie des fichiers de configuration du système Gentoo.
8 Les outils indispensables au système sont installés.
9 Le système d’amorçage (bootloader) est installé et configuré.
10 Le nouvel environnement Gentoo Linux est maintenant prêt à être utilisé.

Lorsque plusieurs possibilités sont présentées, comme ce sera souvent le cas, le manuel s’efforcera d'expliquer les avantages et les inconvénients de chaque option. Même si le texte continuera ensuite avec celle par défaut (identifiée par le texte Défaut :  dans le titre), les autres possibilités seront également documentées (identifiées par Alternative :  dans le titre). Ne pas croire que les choix par défaut représentent les recommandations de Gentoo. Ils indiquent simplement les choix que, selon Gentoo, la plupart des utilisateurs feront.

Parfois, l'utilisateur aura la possibilité de réaliser des actions facultatives. De telles étapes sont identifiées par le texte Facultatif et ne sont pas essentielles pour installer Gentoo. Cependant, certaines options dépendent de choix faits plus tôt. Dans ce cas, les instructions informeront le lecteur au moment de faire le choix et au début de la description de l'étape.

Les options lors l'installation de Gentoo

Gentoo peut être installé de différentes façons. Il peut être téléchargé et installé depuis l'un des CDs ou DVDs d'installation officiels. Le média d'installation peur être installé sur une clé ou accédé depuis un environnement réseau (netboot). Aussi, Gentoo peut être installé depuis une autre distribution précédemment installée ou d'un support non officiel (tel que Knoppix).

Ce manuel décrit l'installation à partir d'un support d'installation officiel de Gentoo ou, dans certains cas, à partir d'une autre machine du réseau.

Remarque
Pour obtenir de l'aide sur d'autres approches d'installation, y compris les approches à l'aide de cédéroms non officiels Gentoo, veuillez lire notre guide sur les installations alternatives.

Nous vous fournissons aussi un document intitulé Trucs & Astuces pour installer Gentoo qui peut se révéler utile à lire.

Problèmes

Si un problème est rencontré lors de l'installation (ou dans la documentation), consultez notre système de gestion des bogues. Si le problème n'est pas déjà connu, créez un rapport de bogue pour que nous puissions le traiter. Ne soyez pas effrayé par les développeurs auxquels les bogues seront attribués, ils n'ont encore mangé personne.

Notez que, même si ce document est propre à une architecture, il peut contenir des références à d'autres architectures. Cela est dû au fait que les manuels pour les différentes architectures ont de nombreuses sections communes. Ceci évite le gaspillage de ressources physiques et humaines. Nous essaierons de limiter ces références à d'autres architectures au strict minimum pour éviter toute confusion.

Si un doute existe quant à l'origine d'un problème qui est soit une erreur de l'utilisateur, bien que la documentation ait été soigneusement lue, soit une erreur de Gentoo malgré toute l'attention portée aux tests et à la documentation, tout le monde est le bienvenu sur les canaux #gentoo ou #gentoofr sur irc.freenode.net pour en discuter. Évidemment, tout le monde est toujours le bienvenu car notre canal de conversation couvre l'ensemble du spectre de Gentoo.

S'il vous reste une question relative à Gentoo, consultez la Foire Aux Questions sur le Wiki de Gentoo. Les FAQs sur les Forums de Gentoo sont également accessibles.




Sommaire du manuel
Installation
‎À propos de l'installation
Choix du média
Configurer le réseau
Préparer les disques
Installer l'archive stage3
Installer le système de base
Configurer le noyau
Configurer le système
Installer les outils
Configurer le système d'amorçage
Finaliser
Utiliser Gentoo
Introduction à Portage
Les options de la variable USE
Les fonctionnalités de Portage
Scripts d'initialisation systèmes
Variables d'environnement
Utiliser Portage
Fichiers et répertoires
Les variables
Mélanger plusieurs branches logicielles
Outils supplémentaires
Dépôt personnalisé
Fonctionnalités avancées
Configuration du réseau
Bien démarrer
Configuration avancée
Les modules réseau
Sans fil
Ajouter des fonctionnalités
Gestion dynamique


Pré-requis matériels

Avant de commencer, voici la liste des exigences concernant le matériel pour réussir l'installation de Gentoo sur un système amd64.


AMD64 livedisk hardware requirements
Minimal CD LiveDVD
CPU Any AMD64 CPU or EM64T CPU (Core i3, i5, and i7 are EM64T)
Memory 256 MB 512 MB
Disk space 2.5 GB (excluding swap space)
Swap space At least 256 MB

The AMD64 project is a good place to be for more information about Gentoo's amd64 support.


Support d'installation de Gentoo Linux

CD minimal d'installation

Remarque
Depuis le 20 Avril 2017 les minimals CDs officiels sont incapables de démarrer en mode UEFI. Ils démarrent en mode BIOS (MBR) seulement. Les lecteurs souhaitant rendre leur système démarrable en UEFI doivent télécharger le dernier Hybrid ISO (LiveDVD).

Le CD minimal d'installation de Gentoo est une image d'un système Linux minimal autonome sur lequel il est possible de démarrer l'ordinateur. Pendant le chargement, le matériel est détecté et les pilotes appropriés sont chargés. L'image est est maintenue par les développeurs de Gentoo et permet d'installer Gentoo via une connexion Internet active.

Le CD minimal d'installation est appelé install-amd64-minimal-<release>.iso.

Le LiveDVD occasionnel de Gentoo

De temps à autre, un DVD spécial d'installation de Gentoo est conçu par le projet Gentoo Ten. Les instructions fournies dans ce chapitre concernent le CDROM minimal d'installation et peuvent différer légèrement de celles à appliquer au LiveDVD. Néanmoins, le LiveDVD (ou tout autre environnement Linux amorçable) permet l'obtention d'une invite de commande root via l'exécution des commandes sudo su - ou sudo -i dans un terminal.

Qu’appel-t-on les archives d'étapes (ou stage) ?

Une archive d'étape 3 contient un environnement Gentoo minimal à partir duquel il est possible d'installer Gentoo sur le système en suivant les instructions de ce manuel. Précédemment, le manuel de Gentoo décrivait l'installation en recourant à une archive parmi trois. Bien que Gentoo mette encore à disposition des archives d'étape 1 et 2, la méthode officielle d'installation utilise l'archive d'étape 3. Si vous tenez absolument à réaliser une installation à partir d'une des archives d'étape 1 ou 2, veuillez consulter la FAQ sur Comment installer Gentoo à partir d'une archive d'étape 1 ou 2?

L'archive d'étape 3 peut être téléchargée depuis releases/amd64/autobuilds/ sur l'un des miroirs Gentoo officiels.Ces archives sont mises à jour fréquemment et ne sont pas incluent dans les supports d'installation.

Téléchargement

Obtenir le support d'installation

Le support d'installation par défaut que Gentoo Linux utilise est le CD minimal d'installation qui héberge un système Gentoo Linux très petit sur lequel il est possible de démarrer l'ordinateur. Cet environnement comprend tous les outils adaptés pour installer Gentoo. Les images CD peuvent être téléchargées depuis la page de téléchargements (recommandé) ou depuis l'un des nombreux miroirs disponibles.

Si le téléchargement s'effectue depuis un miroir, le CDROM minimal d'installation peut se trouver comme suit :

  1. Aller dans le répertoire releases/.
  2. Naviguer le répertoire correspondant à l'architecture souhaitée (tel que amd64/).
  3. Sélectionner le répertoire autobuilds/.
  4. Pour les architectures amd64 et x86, sélectionner soit le répertoire current-install-amd64-minimal/ ou current-install-x86-minimal/ (respectivement). Pour toutes les autres architectures, naviguer vers le répertoire curren-iso/.
Remarque
Certaines architectures comme arm, mips, et s390 n'ont pas de CDROM minimal d'installation. Pour l'instant, le Gentoo Release Engineering project ne propose pas d'image .iso pour ces architectures.

Dans cet emplacement, le fichier du support d'installation est le fichier avec l'extension .iso. Prendre pour exemple la liste suivante :

CODE Liste d'exemple des fichiers téléchargeable dans releases/amd64/autobuilds/current-iso/
[DIR] hardened/                                          05-Dec-2014 01:42    -   
[   ] install-amd64-minimal-20141204.iso                 04-Dec-2014 21:04  208M  
[   ] install-amd64-minimal-20141204.iso.CONTENTS        04-Dec-2014 21:04  3.0K  
[   ] install-amd64-minimal-20141204.iso.DIGESTS         04-Dec-2014 21:04  740   
[TXT] install-amd64-minimal-20141204.iso.DIGESTS.asc     05-Dec-2014 01:42  1.6K  
[   ] stage3-amd64-20141204.tar.bz2                      04-Dec-2014 21:04  198M  
[   ] stage3-amd64-20141204.tar.bz2.CONTENTS             04-Dec-2014 21:04  4.6M  
[   ] stage3-amd64-20141204.tar.bz2.DIGESTS              04-Dec-2014 21:04  720   
[TXT] stage3-amd64-20141204.tar.bz2.DIGESTS.asc          05-Dec-2014 01:42  1.5K

Dans l'exemple ci-dessus, le fichier install-amd64-minimal-20141204.iso correspond au CDROM d'installation lui-même. Il existe cependant d'autres fichiers qui lui sont relatifs :

  • Un fichier .CONTENTS listant tout les fichiers existants dans le support d'installation. Cela permet de vérifier si un micrologiciel ou un pilote en particulier est disponible dans le média d'installation avant de le télécharger.
  • Un fichier .DIGESTS qui contient le hachage du fichier ISO avec de différents algorithmes et formats. Ce fichier peut permettre de savoir si l'ISO téléchargée est corrompue ou non.

Pour le moment ne pas se soucier des autres fichiers – ils entreront en scène plus loin dans le processus d'installation. Télécharger le fichier .ISO et, s'il est nécessaire 'en vérifier l'intégrité, télécharger aussi le fichier .DIGESTS.asc correspondant au fichier ISO. Il n'est pas nécessaire de télécharger le fichier .CONTENTS parce que les instructions d'installation n'y font plus référence et que le fichier .DIGESTS devrait contenir les mêmes informations. Le fichier .DIGESTS.asc contient en plus la signature.

Vérifier les fichiers téléchargés

Remarque
Il s'agit là d'une opération facultative qui n'est pas nécessaire à l'installation de Gentoo Linux, mais elle est néanmoins recommandée.

Grâce aux fichiers .DIGESTS et .DIGESTS.asc, il est possible de garantir l'intégrité du fichier ISO en utilisant les outils adaptés. La vérification se fait généralement en deux étapes :

  1. Tout d'abord, valider la signature cryptographique pour être sûr que le fichier provient de la "Gentoo Release Engineering team".
  2. Si la signature est valide, alors vérifier l'empreinte (somme de contrôle) pour être sûr qu'aucune dégradation ne s'est produite pendant le téléchargement.

Vérifications sur un système Microsoft Windows

Sur un système Microsoft Windows, les chances sont faibles que le bon ensemble d'outils pour vérifier les sommes de contrôle et les signatures cryptographiques soient en place.

Pour vérifier la signature cryptographique, des outils tels que GPG4Win peuvent être utilisés. Après l'installation, les clés publiques de la Gentoo Release Engineering team doivent être importées. La liste des clés est disponible sur la page des signatures. Une fois l'importation terminée, l'utilisateur peut vérifier la signature contenue dans le fichier .DIGEST.asc.

Important
Ceci ne vérifie pas que le fichier .DIGEST est correct, seulement que le fichier .DIGEST.asc l'est. Cela implique également que la somme de contrôle doit être vérifiée en la comparant aux valeurs du fichier .DIGEST.asc. C'est pourquoi les instructions ci-dessus font uniquement référence au téléchargement du fichier .DIGEST.asc.

La somme de contrôle peut être vérifiée à l'aide de l'application Hashcalc, bien que beaucoup d'autres existent. La plupart du temps, ces outils permettront de montrer à l'utilisateur la somme de contrôle calculée et l'utilisateur sera invité à comparer cette somme à la valeur qui est à l'intérieur du fichier .DIGÈRE.asc.

Vérifications sur un système Linux

Sur un système GNU Linux, la méthode la plus courante pour vérifier une signature cryptographique consiste à utiliser le logiciel app-crypt/gnupg. Quand ce paquet est installé, utiliser les commandes suivantes pour vérifier la signature contenue dans le fichier .DIGESTS.asc.

Tout d'abord, télécharger le jeu de clés adéquat disponible sur la page des signatures :

user $gpg --keyserver hkp://keys.gnupg.net --recv-keys 0xBB572E0E2D182910
gpg: requesting key 0xBB572E0E2D182910 from hkp server pool.sks-keyservers.net
gpg: key 0xBB572E0E2D182910: "Gentoo Linux Release Engineering (Automated Weekly Release Key) <releng@gentoo.org>" 1 new signature
gpg: 3 marginal(s) needed, 1 complete(s) needed, classic trust model
gpg: depth: 0  valid:   3  signed:  20  trust: 0-, 0q, 0n, 0m, 0f, 3u
gpg: depth: 1  valid:  20  signed:  12  trust: 9-, 0q, 0n, 9m, 2f, 0u
gpg: next trustdb check due at 2018-09-15
gpg: Total number processed: 1
gpg:         new signatures: 1

Ensuite, vérifier la signature cryptographique du fichier .DIGESTS.asc:

user $gpg --verify install-amd64-minimal-20141204.iso.DIGESTS.asc
gpg: Signature made Fri 05 Dec 2014 02:42:44 AM CET
gpg:                using RSA key 0xBB572E0E2D182910
gpg: Good signature from "Gentoo Linux Release Engineering (Automated Weekly Release Key) <releng@gentoo.org>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 13EB BDBE DE7A 1277 5DFD  B1BA BB57 2E0E 2D18 2910

Pour être absolument certain que tout est valide, vérifier l'empreinte digitale affichée avec l'empreinte digitale disponible sur la page de signatures.

Une fois la signature cryptographique validée, vérifier la somme de contrôle pour s'assurer que le fichier téléchargé ne soit pas corrompu. Le fichier .DIGEST.asc contient des empreintes issues de différents algorithmes de hachage. Il faut en choisir un et rechercher les sommes de contrôle correspondantes parmi celles placées dans le fichier .DIGEST.asc. Par exemple, pour obtenir les sommes de contrôle SHA512 :

user $grep -A 1 -i sha512 install-amd64-minimal-20141204.iso.DIGESTS.asc
# SHA512 HASH
364d32c4f8420605f8a9fa3a0fc55864d5b0d1af11aa62b7a4d4699a427e5144b2d918225dfb7c5dec8d3f0fe2cddb7cc306da6f0cef4f01abec33eec74f3024  install-amd64-minimal-20141204.iso
--
# SHA512 HASH
0719a8954dc7432750de2e3076c8b843a2c79f5e60defe43fcca8c32ab26681dfb9898b102e211174a895ff4c8c41ddd9e9a00ad6434d36c68d74bd02f19b57f  install-amd64-minimal-20141204.iso.CONTENTS

Dans la sortie de la commande précédente, deux sommes de contrôle sont affichées – une pour le fichier install-amd64-minimal-20141204.iso et une autre pour le fichier .CONTENTS qui l'accompagne. Seule la première somme de contrôle présente un intérêt. Elle doit être comparée avec la somme de contrôle calculée et que l'on peut générer de la manière suivante :

user $sha512sum install-amd64-minimal-20141204.iso
364d32c4f8420605f8a9fa3a0fc55864d5b0d1af11aa62b7a4d4699a427e5144b2d918225dfb7c5dec8d3f0fe2cddb7cc306da6f0cef4f01abec33eec74f3024  install-amd64-minimal-20141204.iso

Si les deux sommes de contrôle sont identiques, le fichier n'est pas corrompu et l'installation peut continuer.

Graver un disque

Bien sûr, avec juste un fichier ISO téléchargé, l'installation de Gentoo Linux ne peut pas être démarrée. Le fichier ISO doit être gravé sur un CDROM de démarrage, et d'une manière telle que son "contenu" soit gravé sur le CD, pas juste le fichier lui-même. Ci-dessous sont décrites quelques méthodes – des instructions plus élaborées sont disponible dans notre FAQ sur la gravure d'un fichier ISO.

Gravure sous Microsoft Windows

Sous Microsoft Windows, il existe différents outils pour graver des images ISO sur un CDROM.

  • Avec EasyCD Creator, sélectionner Fichier, Enregistrer un CD à partir d'une image CD. Ensuite, changer le type de fichiers à fichier image ISO. Puis rechercher le fichier ISO et cliquer sur Ouvrir. Après avoir cliqué sur Démarrer l'enregistrement l'image ISO est gravée sur le CD-R.
  • Avec Nero Burning ROM, annuler l'assistant qui s'affiche automatiquement et sélectionner Graver l'Image dans le menu Fichier. Sélectionner l'image à graver et cliquer sur Ouvrir. Ensuite cliquer sur le bouton Graver pour lancer la gravure sur le tout nouveau CD.

Gravure sous Linux

Sur Linux, le fichier ISO peut être gravé sur un CD à l'aide de la commande cdrecord appartenant au paquet app-cdr/cdrtools.

Par exemple, pour graver le fichier ISO sur le CDROM du périphérique {{|Path/dev/sr0}} (c'est le premier lecteur de CDROM su sytème - remplacer le chemin vers le périphérique correspondant si besoin) :

user $cdrecord dev=/dev/sr0 install-amd64-minimal-20141204.iso

Les utilisateurs qui préfèrent une interface graphique peuvent utiliser K3B du paquet kde-apps/k3b. Dans K3B, aller dans Outils et choisir Graver une Image CD. Ensuite, suivre les instructions fournies par K3B.

Démarrage

Booting the installation media

Once the installation media is ready, it is time to boot it. Insert the media in the system, reboot, and enter the motherboard's firmware user interface. This is usually performed by pressing a keyboard key such as DEL, F1, F10, or ESC during the Power-On Self-test (POST) process. The 'trigger' key varies depending on the system and motherboard. If it is not obvious use an internet search engine and do some research using the motherboard's model name as the search keyword. Results should be easy to determine. Once inside the motherboard's firmware menu, change the boot order so that the external bootable media (CD/DVD disks or USB drives) are tried before the internal disk devices. Without this change, the system will most likely reboot to the internal disk device, ignoring the external boot media.

Important
When installing Gentoo with the purpose of using the UEFI interface instead of BIOS, it is recommended to boot with UEFI immediately. If not, then it might be necessary to create a bootable UEFI USB stick (or other medium) once before finalizing the Gentoo Linux installation.

If not yet done, ensure that the installation media is inserted or plugged into the system, and reboot. A boot prompt should be shown. At this screen, Enter will begin the boot process with the default boot options. To boot the installation media with custom boot options, specify a kernel followed by boot options and then hit Enter.

At the boot prompt, users get the option of displaying the available kernels (F1) and boot options (F2). If no choice is made within 15 seconds (either displaying information or using a kernel) then the installation media will fall back to booting from disk. This allows installations to reboot and try out their installed environment without the need to remove the CD from the tray (something well appreciated for remote installations).

Specifying a kernel was mentioned. On the Minimal installation media, only two predefined kernel boot options are provided. The default option is called gentoo. The other being the -nofb variant; this disables kernel framebuffer support.

The next section displays a short overview of the available kernels and their descriptions:

Kernel choices

gentoo
Default kernel with support for K8 CPUs (including NUMA support) and EM64T CPUs.
gentoo-nofb
Same as gentoo but without framebuffer support.
memtest86
Test the local RAM for errors.

Alongside the kernel, boot options help in tuning the boot process further.

Hardware options

acpi=on
This loads support for ACPI and also causes the acpid daemon to be started by the CD on boot. This is only needed if the system requires ACPI to function properly. This is not required for Hyperthreading support.
acpi=off
Completely disables ACPI. This is useful on some older systems and is also a requirement for using APM. This will disable any Hyperthreading support of your processor.
console=X
This sets up serial console access for the CD. The first option is the device, usually ttyS0 on x86, followed by any connection options, which are comma separated. The default options are 9600,8,n,1.
dmraid=X
This allows for passing options to the device-mapper RAID subsystem. Options should be encapsulated in quotes.
doapm
This loads APM driver support. This also requires that acpi=off.
dopcmcia
This loads support for PCMCIA and Cardbus hardware and also causes the pcmcia cardmgr to be started by the CD on boot. This is only required when booting from PCMCIA/Cardbus devices.
doscsi
This loads support for most SCSI controllers. This is also a requirement for booting most USB devices, as they use the SCSI subsystem of the kernel.
sda=stroke
This allows the user to partition the whole hard disk even when the BIOS is unable to handle large disks. This option is only used on machines with an older BIOS. Replace sda with the device that requires this option.
ide=nodma
This forces the disabling of DMA in the kernel and is required by some IDE chipsets and also by some CDROM drives. If the system is having trouble reading from the IDE CDROM, try this option. This also disables the default hdparm settings from being executed.
noapic
This disables the Advanced Programmable Interrupt Controller that is present on newer motherboards. It has been known to cause some problems on older hardware.
nodetect
This disables all of the autodetection done by the CD, including device autodetection and DHCP probing. This is useful for doing debugging of a failing CD or driver.
nodhcp
This disables DHCP probing on detected network cards. This is useful on networks with only static addresses.
nodmraid
Disables support for device-mapper RAID, such as that used for on-board IDE/SATA RAID controllers.
nofirewire
This disables the loading of Firewire modules. This should only be necessary if your Firewire hardware is causing a problem with booting the CD.
nogpm
This disables gpm console mouse support.
nohotplug
This disables the loading of the hotplug and coldplug init scripts at boot. This is useful for doing debugging of a failing CD or driver.
nokeymap
This disables the keymap selection used to select non-US keyboard layouts.
nolapic
This disables the local APIC on Uniprocessor kernels.
nosata
This disables the loading of Serial ATA modules. This is used if the system is having problems with the SATA subsystem.
nosmp
This disables SMP, or Symmetric Multiprocessing, on SMP-enabled kernels. This is useful for debugging SMP-related issues with certain drivers and motherboards.
nosound
This disables sound support and volume setting. This is useful for systems where sound support causes problems.
nousb
This disables the autoloading of USB modules. This is useful for debugging USB issues.
slowusb
This adds some extra pauses into the boot process for slow USB CDROMs, like in the IBM BladeCenter.

Logical volume/device management

dolvm
This enables support for Linux's Logical Volume Management.

Other options

debug
Enables debugging code. This might get messy, as it displays a lot of data to the screen.
docache
This caches the entire runtime portion of the CD into RAM, which allows the user to umount /mnt/cdrom and mount another CDROM. This option requires that there is at least twice as much available RAM as the size of the CD.
doload=X
This causes the initial ramdisk to load any module listed, as well as dependencies. Replace X with the module name. Multiple modules can be specified by a comma-separated list.
dosshd
Starts sshd on boot, which is useful for unattended installs.
passwd=foo
Sets whatever follows the equals as the root password, which is required for dosshd since the root password is by default scrambled.
noload=X
This causes the initial ramdisk to skip the loading of a specific module that may be causing a problem. Syntax matches that of doload.
nonfs
Disables the starting of portmap/nfsmount on boot.
nox
This causes an X-enabled LiveCD to not automatically start X, but rather, to drop to the command line instead.
scandelay
This causes the CD to pause for 10 seconds during certain portions the boot process to allow for devices that are slow to initialize to be ready for use.
scandelay=X
This allows the user to specify a given delay, in seconds, to be added to certain portions of the boot process to allow for devices that are slow to initialize to be ready for use. Replace X with the number of seconds to pause.
Note
The bootable media will check for no* options before do* options, so that options can be overridden in the exact order specified.

Now boot the media, select a kernel (if the default gentoo kernel does not suffice) and boot options. As an example, we boot the gentoo kernel, with dopcmcia as a kernel parameter:

boot:gentoo dopcmcia

Next the user will be greeted with a boot screen and progress bar. If the installation is done on a system with a non-US keyboard, make sure to immediately press Alt+F1 to switch to verbose mode and follow the prompt. If no selection is made in 10 seconds the default (US keyboard) will be accepted and the boot process will continue. Once the boot process completes, the user is automatically logged in to the "Live" Gentoo Linux environment as the root user, the super user. A root prompt is displayed on the current console, and one can switch to other consoles by pressing Alt+F2, Alt+F3 and Alt+F4. Get back to the one started on by pressing Alt+F1.


Configuration matérielle supplémentaire

Lorsque le support d'installation démarre, il tente de détecter le matériel et charge les modules appropriés du noyau pour prendre en compte le matériel. Dans la grande majorité des cas, il fait un très bon travail. Toutefois, dans certains cas, il peut ne pas charger automatiquement les modules du noyau nécessaires au système. Si la détection automatique du bus PCI a oublié certains matériels du système, les modules appropriés du noyau doivent être chargées manuellement.

Dans l'exemple suivant, le module 8139too (qui prend en charge certains types d'interfaces réseau) est chargé :

root #modprobe 8139too

Facultatif: comptes utilisateurs

Si d'autres personnes ont besoin d'accéder à l'environnement d'installation, ou s'il est nécessaire d'exécuter des commandes en tant qu'utilisateur non-root sur le support d'installation (comme pour discuter sur IRC à l'aide de irssi sans être root pour des raisons de sécurité), alors un compte d'utilisateur supplémentaire doit être créé et un mot de passe root robuste défini.

Pour changer le mot de passe root, utiliser l'utilitaire passwd :

root #passwd

Pour créer un compte d'utilisateur, entrer d'abord ses informations d'identification, suivies par le mot de passe du compte. Les commandes useradd et passwd sont utilisées pour ces tâches.

Dans l'exemple suivant, un utilisateur appelé jean est créé :

root #useradd -m -G users jean
root #passwd jean
New password: (Entrez le mot de passe de jean)
Re-enter password: (Entrez de nouveau le mot de passe de jean)

Pour passer de l'utilisateur root à l'utilisateur fraîchement créé, utiliser la commande su :

root #su - jean

Facultatif : Consulter la documentation pendant l'installation

TTYs

Pour afficher le manuel Gentoo lors de l'installation, créer tout d'abord un compte utilisateur, comme décrit ci-dessus. Puis appuyer sur Alt+F2 pour accéder à un nouveau terminal.

Lors de l'installation, la commande links peut être utilisée pour parcourir le manuel Gentoo - bien sûr cela nécessite que la connexion Internet fonctionne.

user $links https://wiki.gentoo.org/wiki/Handbook:AMD64

Pour revenir au terminal d'origine, appuyer sur Alt+F1.

GNU Screen

L'utilitaire GNU Screen est installé par défaut sur le support d'installation officiel de Gentoo. Il peut être plus efficace pour un utilisateur de Linux expérimenté d'utiliser screen afin de visualiser les instructions d'installation dans un cadre séparé plutôt que d'utiliser la technique des multiples TTY mentionnée ci-dessus.

Facultatif : démarrer le démon SSH

Pour permettre à d'autres utilisateurs d'accéder au système lors de l'installation (peut-être pour obtenir de l'aide lors d'une installation, ou même la faire à distance), un compte d'utilisateur doit être créé (comme documenté plus tôt) et le serveur SSH doit être démarré.

Pour lancer le démon SSH, exécuter la commande suivante :

root #service sshd start
Remarque
Si un utilisateur ouvre une session sur le système, il reçoit un message indiquant que la clé d'hôte pour ce système doit être confirmée (par le biais de ce qu'on appelle une empreinte digitale). Ceci est dû au fait que c'est la première fois que quelqu'un ouvre une session sur le système. Cependant, plus tard, lorsque le système est mis en place et que quelqu'un se connecte sur le nouveau système, le client SSH l'avertit que la clé de l'hôte a été changée. C'est parce que l'utilisateur – pour SSH – se connecte désormais à un serveur différent (à savoir le système Gentoo fraîchement installé plutôt qu'à l'environnement en cours d'utilisation pour l'installation ). Suivre alors les instructions données à l'écran pour remplacer la clé de l'hôte sur le système client.

Pour être en mesure d'utiliser sshd, le réseau a besoin de fonctionner correctement. Passer au chapitre Configurer le réseau .




AMD64 Handbook
Installation
About the installation
Choosing the media
Configuring the network
Preparing the disks
Installing stage3
Installing base system
Configuring the kernel
Configuring the system
Installing tools
Configuring the bootloader
Finalizing
Working with Gentoo
Portage introduction
USE flags
Portage features
Initscript system
Environment variables
Working with Portage
Files and directories
Variables
Mixing software branches
Additional tools
Custom package repository
Advanced features
Network configuration
Getting started
Advanced configuration
Modular networking
Wireless
Adding functionality
Dynamic management


Détection automatique du réseau

Il est possible que la connexion au réseau soit déjà opérationnelle.

Si le système est connecté via Ethernet à un serveur DHCP, il est probable que laconnexion ait déjà été configurée automatiquement. Si tel est le cas, les commandes habituelles telles que ssh, scp, ping, irssi, wget, et links qui sont sur le CD d'installation fonctionneront immédiatement.

Déterminer les noms des interfaces

La commande ifconfig

Si le réseau est configuré, la commande ifconfig doit lister une ou plusieurs interfaces réseau (outre lo). Dans l'example ci-dessous, eth0 est affiché :

root #ifconfig
eth0      Link encap:Ethernet  HWaddr 00:50:BA:8F:61:7A
          inet addr:192.168.0.2  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::50:ba8f:617a/10 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1498792 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1284980 errors:0 dropped:0 overruns:0 carrier:0
          collisions:1984 txqueuelen:100
          RX bytes:485691215 (463.1 Mb)  TX bytes:123951388 (118.2 Mb)
          Interrupt:11 Base address:0xe800 

Suite à l'évolution vers des noms d'interfaces réseau prévisibles, le nom des interfaces peut être différent du système de nommage précédent eth0. Les médias d'installation peuvent afficher des noms d'interface tels que eno0, Template:Path,ens1, ou encore. Chercher l'interface ayant une IP adresse liée au réseau local dans le résultat de la commande ifconfig

Conseil
Si aucune interface est affichée lors de l'utilisation de la commande ifconfig, essayer d'ajouter l'option -a. Cette option force l'utilitaire à afficher toutes les interfaces réseau détectées par le système quelque soit leur état d'activation. Si ifconfig -a ne produit aucun résultat alors le matériel est défecteux ou les pilotes de l'interface réseau n'ont pas été chargés dans le noyau. Ces deux cas ne sont pas couverts dans ce guide. Contacter le support #gentoo.

La commande ip

La commande ip peut être utilisée comme alternative à ifconfig pour déterminer les nom des interfaces. L'exemple suivant montre le résultat de la commande ip addr (d'un système différent que celui des exemples précédents) :

root #ip addr
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether e8:40:f2:ac:25:7a brd ff:ff:ff:ff:ff:ff
    inet 10.0.20.77/22 brd 10.0.23.255 scope global eno1
       valid_lft forever preferred_lft forever
    inet6 fe80::ea40:f2ff:feac:257a/64 scope link 
       valid_lft forever preferred_lft forever

La sortie ci-dessus peut être plus compliquée à comprendre que celle de ifconfig. Dans cet exemple, le nom de l'interface suit directement le numéro; c'est eno1.

Dans le reste de ce document, il sera assumé que l'interface réseau s'appelle eth0.

Facultatif: Configurer tous les proxys

Si l'Internet est accessible via un proxy, il est nécessaire de définir des informations de proxy lors de l'installation. Il est très facile de définir un proxy: il suffit de définir une variable qui contient les informations du serveur proxy.

Dans la plupart des cas, il suffit de définir les variables à l'aide du nom d'hôte du serveur. Comme exemple, nous supposons que le proxy est appelé proxy.gentoo.org et le port 8080.

Pour configurer un proxy HTTP (pour le trafic HTTP et HTTPS):

root #export http_proxy="http://proxy.gentoo.org:8080"

Pour configurer un proxy FTP:

root #export ftp_proxy="ftp://proxy.gentoo.org:8080"

Pour configurer un proxy RSYNC :

root #export RSYNC_PROXY="proxy.gentoo.org:8080"

Si le serveur proxy requiert un nom d'utilisateur et un mot de passe, utilisez la syntaxe suivante pour définir la variable:

CODE Adding username/password to the proxy variable
http://username:password@proxy.gentoo.org:8080

Tester le réseau

Essayez d'interroger le serveur DNS de votre fournisseur (qui se trouve dans de/etc/resolv.conf) et un site web de votre choix. Cela garantit que le réseau fonctionne correctement, que les paquets arrivent sur le net et la résolution de nom du serveur DNS fonctionne correctement, etc.

root #ping -c 3 www.gentoo.org

Si tout cela fonctionne, alors le reste de ce chapitre peut être ignoré pour passer directement à l'étape suivante de la procédure d'installation (Préparer les disques).

Configuration automatique du réseau

Si le réseau ne fonctionne pas immédiatement, certains médias d'installation permettent à l'utilisateur d'utiliser les commandes net-setup(pour des réseaux filaires et sans fil), pppoe-setup (pour les utilisateurs de l'ADSL) ou pptp (pour des utilisateurs PPTP).

Si le médium d'installation ne contient aucun de ces outils, continuer avec la Configuration Manuel du réseau.

Par défaut: utilisation de net-setup

La manière la plus simple de configurer la mise en réseau si cette configuration ne s'est pas produite automatiquement, est de lancer le script net-setup :

root #net-setup eth0

L'exécution de la commande net-setup posera quelques questions au sujet de l'environnement réseau. À la fin, la connexion réseau devrait fonctionner. Tester la connexion réseau comme indiqué précédemment. Si les tests sont positifs, félicitations ! Ignorer le reste de cette section et continuer avec le Préparer les disques.

Si le réseau ne fonctionne toujours pas, continuer avec configuration manuelle du réseau.

Alternative: utilisation de PPP

En supposant que le protocole PPPoE est nécessaire pour se connecter à l'Internet, le CD d'installation (toute version) a rendu les choses encore plus faciles grâce à ppp. Utiliser le script pppoe-setup pour configurer la connexion. Lors de l'installation, le périphérique ethernet connecté au modem ADSL, le nom d'utilisateur, le mot de passe, les adresses ip des serveurs DNS et si un pare-feu de base est nécessaire ou non seront demandés.

root #pppoe-setup
root #pppoe-start

Si quelque chose ne va pas, vérifier que le nom d'utilisateur et le mot de passe soient corrects en regardant dans /etc/ppp/pap-secrets ou /etc/ppp/chap-secrets et s'assurer d'utiliser le bon périphérique Ethernet. Si le périphérique Ethernet n'existe pas, les modules réseau appropriés doivent être chargés. Dans ce cas, continuer avec configuration manuelle du réseau qui expliquera comment charger les modules réseau nécessaires.

Si tout a fonctionné, continuer avec Préparer les disques.

Alternative: utilisation de PPTP

Si le support PPTP est nécessaire, utiliser la commande pptpclient qui est fournie par le CD d'installation. Mais d'abord, s'assurer que la configuration soit correcte. Modifier le fichier /etc/ppp/pap-secrets ou /etc/ppp/chap-secretspour qu'il contienne le nom d'utilisateur et le mot de passe corrects  :

root #nano -w /etc/ppp/chap-secrets

Puis peaufinez de/etc/ppp/options.pptp si nécessaire:

root #nano -w /etc/ppp/options.pptp

Quand tout cela est fait, il suffit d'exécuter pptp (avec les options qui n'ont pu être définies dans options.pptp) pour se connecter au serveur :

root #pptp <server ip>

Continuez maintenant avec Préparer les disques.

Configuration manuelle du réseau

Charger les modules réseau appropriés

Lorsque le CD d'Installation démarre, il tente de détecter les périphériques et charge les modules du noyau appropriés (les pilotes) afin de prendre en compte le matériel. Dans la grande majorité des cas, il fait un très bon travail. Toutefois, dans certains cas, il peut advenir que les modules du noyau nécessaires ne soient pas chargés.

Si net-setup ou pppoe-setup n'a pas réussi, alors il est possible que la carte réseau n'ait pas été trouvée immédiatement. Cela signifie que les utilisateurs peuvent avoir à charger les modules appropriés du noyau manuellement.

Pour savoir quels modules du noyau sont fournis pour la mise en réseau, utiliser la commande ls :

root #ls /lib/modules/`uname -r`/kernel/drivers/net

Si un pilote est trouvé pour le périphérique réseau, utiliser la commande modprobe pour charger le module du noyau. Par exemple, pour charger le module pcnet32 :

root #modprobe pcnet32

Pour vérifier si la carte réseau est maintenant détectée, utiliser la commande ifconfig. Une carte réseau détectée aboutirait à quelque chose comme ceci (encore une fois,eth0 ici est juste un exemple):

root #ifconfig eth0
eth0      Link encap:Ethernet  HWaddr FE:FD:00:00:00:00  
          BROADCAST NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

Si, toutefois, le message d'erreur suivant s'affiche, la carte réseau n'est pas détectée:

root #ifconfig eth0
eth0: error fetching interface information: Device not found

Les noms d'interface réseau disponibles sur le système peuvent être énumérés par le système de fichiers /sys :

root #ls /sys/class/net
dummy0  eth0  lo  sit0  tap0  wlan0

Dans l'exemple ci-dessus, 6 interfaces sont trouvées. eth0 est le plus probablement l'adaptateur Ethernet (câble) alors que wlan0 est l'adaptateur sans fil.

En supposant que la carte réseau soit maintenant détectée, réessayer la commande net-setup ou pppoe-setup (qui devrait maintenant fonctionner), mais pour les inconditionnels ce manuel explique aussi comment configurer le réseau manuellement.

Sélectionner l'une des sections suivantes en prenant en compte la configuration du réseau:

Utiliser DHCP

DHCP (Dynamic Host Configuration Protocol) rend possible de recevoir automatiquement des informations de mise en réseau (adresse IP, masque de réseau, adresse de diffusion, passerelle, serveurs de noms, etc.). Cela ne fonctionne que si un serveur DHCP existe dans le réseau (ou si le fournisseur d'accès internet fournit un service DHCP). Pour qu'une interface réseau recoive automatiquement ces informations, utiliser le démon dhcpcd :

root #dhcpcd eth0

Certains administrateurs de réseau exigent que le nom d'hôte et le nom de domaine fourni par le serveur DHCP soient utilisés par le système. Dans ce cas, utilisez:

root #dhcpcd -HD eth0

Si cela fonctionne (essayez d'interroger un serveur sur Internet, comme Google), quand tout est réglé et prêt à continuer, ignorez le reste de cette section et continuez avec Préparer les disques.

Configurer l'accès sans fil

Note
La prise en charge de la commande iwconfig peut être spécifique à l'architecture. Si la commande n'est pas disponible, voir sir le paquet net-wireless/iw est disponible pour l'architecture actuelle. La commande iw sera indisponible tant que le paquet net-wireless/iw n'a pas été installé.

Lors de l'utilisation d'une carte réseau sans fil (802.11), les paramètres sans fil doivent être configurés avant d'aller plus loin. Pour voir les paramètres sans fil de la carte, on peut utiliser la commande iw. L'exécution de iw pourrait donner quelque chose qui ressemble à ceci :

root #iw dev wlp9s0 info
Interface wlp9s0
	ifindex 3
	wdev 0x1
	addr 00:00:00:00:00:00
	type managed
	wiphy 0
	channel 11 (2462 MHz), width: 20 MHz (no HT), center1: 2462 MHz
	txpower 30.00 dBm

Pour vérifier si une connexion active existe :

root #iw dev wlp9s0 link
Not connected.

ou

root #iw dev wlp9s0 link
Connected to 00:00:00:00:00:00 (on wlp9s0)
	SSID: GentooNode
	freq: 2462
	RX: 3279 bytes (25 packets)
	TX: 1049 bytes (7 packets)
	signal: -23 dBm
	tx bitrate: 1.0 MBit/s
Note
Certaines cartes sans fil peuvent avoir un nom de périphérique wlan0 ou ra0 au lieu de wlp9s0. Exécuter ip link pour déterminer le nom correct du périphérique.

Pour la plupart des utilisateurs, il y a seulement deux paramètres importants pour we connecter, l'ESSID (ou nom de réseau sans fil) et, accessoirement, la clé WEP.

  • S'assurer d'abord que l'interface soit activée :
root #ip link set dev wlp9s0 up
  • Pour se connecter à un réseau public portant le nom "GentooNode" :
root #iw dev wlp9s0 connect -w GentooNode
  • Pour se connecter avec une clé WEP hexadécimale, préfixer la clé avec d: :
root #iw dev wlp9s0 connect -w GentooNode key 0:d:1234123412341234abcd
  • Pour se connecter avec une clé WEP ASCII :
root #iw dev wlp9s0 connect -w GentooNode key 0:some-password
Note
Si le réseau sans fil est configuré avec WPA ou WPA2, alors wpa_supplicant doit être utilisé. Pour plus d'informations sur la configuration des réseaux sans fil sous Gentoo Linux, lire le chapitre sur les réseaux sans fil du manuel de Gentoo.

Confirmer les paramètres sans fil en utilisant la commande iw dev wlp9s0 link. Une fois que le sans-fil fonctionne, poursuivre avec la configuration des options réseau au niveau de l'adresse IP comme décrit dans la section suivante (Comprendre la terminologie des réseaux) ou utiliser l'outil net-setup comme décrit précédemment.

Comprendre la terminologie réseau

Note
Si l'adresse IP, adresse de diffusion, le masque de réseau et les serveurs de noms sont connus, sauter ce paragraphe et continuer avec Utiliser ifconfig et route.

Si tout ce qui précède échoue, le réseau doit être configuré manuellement. Ce n'est pas difficile du tout. Cependant, une certaine connaissance de la terminologie des réseaux et des concepts de base est nécessaire. Après la lecture de cette section, les utilisateurs devraient savoir ce qu'est une passerelle, à quoi sert un masque de réseau, de quoi est constituée une adresse de diffusion et pourquoi les systèmes ont besoin de serveurs de noms.

Dans un réseau, les machines sont identifiées par leur adresse IP (adresse de Protocole Internet). Une telle adresse est perçue comme une combinaison de quatre nombres entre 0 et 255, tout du moins lors de l'utilisation d'IPv4 (IP version 4). En réalité, une telle adresse IPv4 se compose de 32 bits (des uns et des zéros). Voyons un exemple:

CODE Exemple d'adresse IPv4
Adresse IP  (nombre décimaux):192.168.0.2
Adresse IP  (bits):           11000000 10101000 00000000 00000010
                              -------- -------- -------- --------
                              192      168       0        2
Note
Le successeur d'IPv4, IPv6, utilise 128 bits (zéros et de uns). Dans cette section, l'accent est mis sur les adresses IPv4.

Il est facile de comprendre que tout hôte que quelqu'un est en mesure d'atteindre sur un réseau doit avoir une adresse IP unique. Afin de distinguer entre les hôtes à l'intérieur et à l'extérieur d'un réseau, l'adresse IP est divisée en deux parties: la partie réseau et la partie hôte.

La séparation est déterminée par le masque de réseau qui est une suite de 1 suivie d'une suite de 0 selon la structure d'une adresse IP. La partie de l'adresse IP qui correspond aux 1 définit la partie réseau, l'autre définit la partie hôte.

CODE Exemple de séparation entre réseau et hôte
Adresse IP :            192      168      0         2
                     11000000 10101000 00000000 00000010
Masque de réseau:    11111111 11111111 11111111 00000000
                       255      255     255        0
                     +--------------------------+--------+
                               Réseau              Hôte

En d'autres termes, 192.168.0.14 fait toujours partie du réseau d'exemple, mais pas 192.168.1.2.

L'adresse de diffusion est une adresse IP avec la même partie réseau que le réseau, mais seulement avec des 1 pour la partie hôte. Chaque hôte sur le réseau est à l'écoute à cette adresse IP. Elle est vraiment destinée à la diffusion de paquets.

CODE Adresse de diffusion
Adresse IP:               192      168      0         2
                       11000000 10101000 00000000 00000010
Adresse de diffusion:  11000000 10101000 00000000 11111111
                          192      168      0        255
                       +--------------------------+--------+
                                Réseau              Hôte

Pour pouvoir surfer sur Internet, chaque ordinateur du réseau doit connaître l'hôte qui partage la connexion Internet. Cet hôte est appelée la passerelle. Comme c'est un hôte comme les autres, il possède une adresse IP sur le réseau (par exemple 192.168.0.1).

Précédemment, nous avons dit que chaque machine a sa propre adresse IP. Pour être en mesure d'atteindre cet hôte par un nom (au lieu d'une adresse IP), nous avons besoin d'un service qui puisse traduire un nom (comme dev.gentoo.org) en une adresse IP (comme 64.5.62.82). Un tel service est appelé "serveur de noms". Pour utiliser un tel service, les serveurs de noms nécessaires doivent être définis dans de/etc/resolv.conf.

Dans certains cas, la passerelle sert également de serveur de noms. Sinon les serveurs de noms fournis par le fournisseur d'accès Internet (FAI) doivent être inscrits dans ce fichier.

Pour résumer, les informations suivantes sont nécessaires avant de continuer:

Element réseau Exemple
L'adresse IP du système 192.168.0.2
Masque de réseau 255.255.255.0
Adresse de diffusion 192.168.0.255
Adresse de la passerelle 192.168.0.1
Serveurs de noms 195.130.130.5, 195.130.130.133

Utiliser ifconfig et route

La mise en place du réseau comporte trois étapes :

  1. Assigner une adresse IP en utilisant ifconfig
  2. Configurer la route vers la passerelle en utilisant route
  3. Terminer en mettant les IPs des serveur de noms dans /etc/resolv.conf

Pour attribuer une adresse IP, l'adresse IP, l'adresse de diffusion et le masque de réseau sont nécessaires. Ensuite, exécuter la commande suivante, en remplaçant ${IP_ADDR} par la bonne adresse IP, ${BROADCAST} par la bonne adresse de diffusion et ${NETMASK} par le bon masque de réseau :

root #ifconfig eth0 ${IP_ADDR} broadcast ${BROADCAST} netmask ${NETMASK} up

Configurer le routage à l'aide de la commande route. Remplacer ${GATEWAY} par la bonne adresse IP de la passerelle :

root #route add default gw ${GATEWAY}

Maintenant, ouvrez de/etc/resolv.conf:

root #nano -w /etc/resolv.conf

Remplir les serveur de noms en se servant de ce qui suit comme d'un modèle. S'assurer de remplacer ${NAMESERVER1} et ${NAMESERVER2} par les adresses des serveurs de noms appropriées :

CODE Modèle par défaut à utiliser pour /etc/resolv.conf
nameserver ${NAMESERVER1}
nameserver ${NAMESERVER2}

C'est tout. Maintenant testez le réseau par un ping vers un serveur Internet (comme Google). Si cela fonctionne, félicitations. Continuez avec Préparer les disques.




Sommaire du manuel
Installation
‎À propos de l'installation
Choix du média
Configurer le réseau
Préparer les disques
Installer l'archive stage3
Installer le système de base
Configurer le noyau
Configurer le système
Installer les outils
Configurer le système d'amorçage
Finaliser
Utiliser Gentoo
Introduction à Portage
Les options de la variable USE
Les fonctionnalités de Portage
Scripts d'initialisation systèmes
Variables d'environnement
Utiliser Portage
Fichiers et répertoires
Les variables
Mélanger plusieurs branches logicielles
Outils supplémentaires
Dépôt personnalisé
Fonctionnalités avancées
Configuration du réseau
Bien démarrer
Configuration avancée
Les modules réseau
Sans fil
Ajouter des fonctionnalités
Gestion dynamique


Introduction aux fichiers de périphériques

Les fichiers de périphériques

Étudions en détail les aspects de Gentoo qui concernent les disques, les systèmes de fichiers de Linux, les partitions et les fichiers de périphériques. Une fois que les tenants et les aboutissants des disques et des systèmes de fichiers seront compris, il sera possible d'établir les partitions et les systèmes de fichiers pour l'installation de Gentoo Linux.

Pour commencer, intéressons-nous aux fichiers de périphériques. Le plus connu des fichiers de périphériques est sans doute le premier disque sur un système Linux, à savoir sur/dev/sda. Les disques SCSI et Serial ATA sont tous les deux étiquetés /dev/sd*; même les disques IDE sont étiquetés /dev/sd* avec la nouvelle structure de libata dans le noyau. Avec l'ancienne structure, le premier disque IDE est étiqueté /dev/hda.

Les fichiers de périphériques ci-dessus représentent une interface abstraite pour le disque. Les programmes utilisateurs peuvent utiliser ces fichiers de périphériques pour interagir avec le disque sans se soucier de savoir s'il est IDE, SCSI ou quelque chose d'autre. Le programme peut simplement adresser le stockage sur le disque comme un groupe de blocs contigus de 512 octets, accessibles aléatoirement.

Créer des systèmes de fichiers

Introduction

Maintenant que les partitions sont créées, il est temps d'y placer un système de fichiers. Dans la section suivante les différents systèmes de fichiers que Linux prend en charge seront décris. Les lecteurs qui connaissent déjà quel système de fichiers utiliser peuvent continuer avec Appliquer un système de fichiers à une partition. Les autres devraient continuer à lire pour en apprendre plus sur les systèmes de fichiers disponibles...

Les systèmes de fichiers

Plusieurs systèmes de fichiers sont disponibles. Certains d'entre eux sont considérés stables sur l'architecture amd64 - il est conseillé de se renseigner sur les systèmes de fichiers et leur prise en charge avant d'en choisir un plus expérimental pour les partitions importantes.

btrfs
Un système de fichiers de nouvelle génération offrant de nombreuses fonctionnalités avancées telles que l'instantané, l'auto-guérison via des sommes de contrôle, la compression transparente, les sous-volumes et le RAID intégré. Quelques distributions ont commencé à l'expédier comme une option prête à l'emploi, mais il n'est pas encore prêt pour la production. Les rapports de corruption du système de fichiers sont courants. Ses développeurs incitent les gens à utiliser la dernière version du noyau pour la sécurité car les plus anciens ont des problèmes connus. Cela a été le cas pendant des années et il est trop tôt pour dire si les choses ont changé. Les correctifs pour les problèmes de corruption sont rarement rétro-portés vers les noyaux plus anciens. Procéder avec prudence lors de l'utilisation de ce système de fichiers !
ext2
Il s'agit du système de fichiers Linux éprouvé, mais il n'a pas de journalisation des métadonnées, ce qui signifie que les vérifications de routine du système de fichiers ext2 au démarrage peuvent prendre beaucoup de temps. Il y a maintenant une grande sélection de systèmes de fichiers journalisés de nouvelle génération dont la cohérence peut être vérifiée très rapidement et qui sont donc généralement préférés à leurs homologues non journalisés. Les systèmes de fichiers journalisés empêchent les retards importants lorsque le système est démarré et que le système de fichiers se trouve dans un état incohérent.
ext3
La version journalisée du système de fichiers ext2, fournissant la journalisation des métadonnées pour une récupération rapide en plus d'autres modes de journalisation améliorés tels que les données complètes et la journalisation ordonnée des données. Il utilise un indice HTree qui permet des performances élevées dans presque toutes les situations. En bref, ext3 est un système de fichiers très bon et fiable.
ext4
Initialement créé en tant que fork de ext3, ext4 apporte de nouvelles fonctionnalités, des améliorations de performances et la suppression des limites de taille avec des modifications modérées du format sur le disque. Il peut couvrir des volumes allant jusqu'à 1 Eo, et avec une taille de fichier maximale de 16 To. Au lieu de l'allocation de blocs bitmap ext2/3 classique, ext4 utilise des extensions, ce qui améliore les performances des fichiers volumineux et réduit la fragmentation. Ext4 fournit également des algorithmes d'allocation de blocs plus sophistiqués (allocation différée et allocation multi-bloc) donnant au conducteur du système de fichiers plus de moyens d'optimiser la disposition des données sur le disque. Ext4 est le système de fichiers multi plate-forme tout usage recommandé.
f2fs
Le système de fichiers Flash-Friendly a été créé par Samsung pour l'utilisation avec la mémoire flash NAND. Depuis le deuxième trimestre 2016, ce système de fichiers est encore considéré comme immature, mais c'est un choix décent lors de l'installation de Gentoo sur des cartes microSD, des clés USB ou autres périphériques de stockage flash.
JFS
Le système de fichiers de journalisation hautes performances d'IBM. JFS est un système de fichiers basé sur l'arbre B+ léger, rapide et fiable avec de bonnes performances dans diverses conditions.
ReiserFS
Un système de fichiers journalisé basé sur l'arborescence B+ qui a de bonnes performances globales, en particulier lorsqu'il s'agit de traiter de nombreux fichiers minuscules au prix de plusieurs cycles de processeur. ReiserFS semble être moins bien entretenu que les autres systèmes de fichiers.
XFS
Un système de fichiers avec journalisation des métadonnées, doté d'un ensemble de fonctionnalités robuste et optimisé pour l'évolutivité. XFS semble être moins indulgent dans le cas de problèmes matériels.
vfat
Également connu sous le nom FAT32, ce format est pris en charge par Linux mais ne prend pas en charge les paramètres d'autorisation. Il est principalement utilisé pour l'interopérabilité avec d'autres systèmes d'exploitation (principalement Microsoft Windows) mais est également une nécessité pour certains micrologiciels systèmes (comme UEFI).
NTFS
Ce système de fichiers "New Technology" est le système de fichiers phare de Microsoft Windows. Similaire à vfat ci-dessus, il ne stocke pas les paramètres d'autorisation ni les attributs étendus nécessaires au bon fonctionnement de BSD ou de Linux. Il ne peut donc pas être utilisé comme système de fichiers racine. Il devrait seulement être utilisé pour l'interopérabilité avec les systèmes Microsoft Windows (noter l'emphase sur seulement).

Lors de l'utilisation de ext2, ext3 ou ext4 sur une petite partition (moins de 8 Go), le système de fichiers doit être créé avec les options appropriées pour réserver suffisamment de nœuds d'index ou inodes. L'application mke2fs utilise le paramètre bytes-per-inodes pour calculer le nombre d' inodes d'un système de fichiers. Sur des partitions plus petites, il est conseillé d'augmenter le nombre d' inodes calculé.

Sur ext2, cela peut être fait à l'aide de la commande suivante :

root #mkfs.ext2 -T small /dev/<device>

Sur ext3 et ext4, ajouter l'option -v pour activer la journalisation :

root #mkfs.ext2 -j -T small /dev/<device>

En général, ceci quadruple le nombre d' inodes pour un système de fichiers étant donné que son paramètre bytes-per-inode passe de un tous les 16 ko à un tous les 4 ko. Cela peut être encore plus peaufiné en fournissant le ratio :

root #mkfs.ext2 -i <ratio> /dev/<device>

Appliquer un système de fichiers à une partition

Pour créer un système de fichiers sur une partition ou un volume, des outils sont disponibles pour chaque système de fichiers. Cliquer sur le nom du système de fichiers dans le tableau ci-dessous pour plus d'informations sur chaque système de fichiers :

! Système de fichiers Commande pour la création Sur CD minimal? Paquet
btrfs mkfs.btrfs Oui sys-fs/btrfs-progs
ext2 mkfs.ext2 Oui sys-fs/e2fsprogs
ext3 mkfs.ext3 Oui sys-fs/e2fsprogs
ext4 mkfs.ext4 Oui sys-fs/e2fsprogs
f2fs mkfs.f2fs Oui sys-fs/f2fs-tools
jfs mkfs.jfs Oui sys-fs/jfsutils
reiserfs mkfs.reiserfs Oui sys-fs/reiserfsprogs
xfs mkfs.xfs Oui sys-fs/xfsprogs
vfat mkfs.vfat Oui sys-fs/dosfstools
NTFS mkfs.ntfs Oui sys-fs/ntfs3g

Par exemple, pour avoir la partition boot (/dev/sda2) en ext2 et la partition racine (/dev/sda4) en ext4 comme utilisé dans l'exemple de structuration des partitions, les commandes suivantes doivent être utilisées :

root #mkfs.ext2 /dev/sda2
root #mkfs.ext4 /dev/sda4

Maintenant, il est possible de créer les systèmes de fichiers sur les partitions nouvellement créées (ou sur les volumes logiques).

Activer la partition d'échange

mkswap est la commande à utiliser pour initialiser les partitions d'échange :

root #mkswap /dev/sda3

Pour activer la partition d'échange, utiliser la commande swapon :

root #swapon /dev/sda3

Créer et activer la partition d'échange avec les commandes ci-dessus mentionnées.

Monter la partition racine

Maintenant que les partitions sont initialisées et hébergent un système de fichiers, il est temps de les monter. Utiliser la commande mount, mais ne pas oublier de créer les points de montage nécessaires pour chaque partition. À titre d'exemple, nous montons la partition racine :

root #mount /dev/sda4 /mnt/gentoo
Note
Si /tmp/ doit se trouver sur une partition séparée, penser à changer ses droits d'accès après le montage  :
root #chmod 1777 /mnt/gentoo/tmp
Cela vaut également pour/var/tmp.

Plus loin, dans les instructions, le système de fichiers /proc (une interface virtuelle avec le noyau) ainsi que d'autres pseudos systèmes de fichiers du noyau seront montés. Mais d'abord, nous devons installer les fichiers d'installation de Gentoo.




Sommaire du manuel
Installation
‎À propos de l'installation
Choix du média
Configurer le réseau
Préparer les disques
Installer l'archive stage3
Installer le système de base
Configurer le noyau
Configurer le système
Installer les outils
Configurer le système d'amorçage
Finaliser
Utiliser Gentoo
Introduction à Portage
Les options de la variable USE
Les fonctionnalités de Portage
Scripts d'initialisation systèmes
Variables d'environnement
Utiliser Portage
Fichiers et répertoires
Les variables
Mélanger plusieurs branches logicielles
Outils supplémentaires
Dépôt personnalisé
Fonctionnalités avancées
Configuration du réseau
Bien démarrer
Configuration avancée
Les modules réseau
Sans fil
Ajouter des fonctionnalités
Gestion dynamique


Installation d'une archive tar

Réglage de la date et de l'heure

Avant d'installer gentoo, il est bon de s'assurer que la date et l'heure soit réglées correctement. Une horloge mal configurée peut entraîner des résultats plutôt étranges c'est pourquoi les fichiers systèmes doivent être extraits avec des horodatages précis. En fait, en raison de plusieurs sites Web et services utilisant des communications cryptées (SSL/TLS), il peut ne pas être possible de télécharger les fichiers d'installation si l'horloge système est trop déréglée !

Vérifier la date et l'heure actuelle avec la commande date :

root #date
Mon Oct  3 13:16:22 PDT 2016

Si la date affichée est incorrecte, la mettre à jour en utilisant l'une des méthodes ci-dessous.

Note
Les cartes mères qui n'incluent pas une horloge en temps réel (Real-Time Clock (RTC)) doivent être configurées de façon à automatiquement synchroniser l'horloge système avec un serveur de temps. Cela est également vrai pour les systèmes qui incluent une RTC mais ont une batterie défaillante.

Automatiquement

Le média officiel d'installation de Gentoo inclut la commande ntpd (disponible avec le paquet net-misc/ntp) et un fichier de configuration pointant vers les serveur de temps de ntp.org. Il est ainsi possible de synchroniser l'heure du système à l'heure UTC mais cette méthode nécessite une configuration du réseau fonctionnelle et peut ainsi être inutilisable sous certaines architectures.

Attention !
La synchronisation automatique vient à un prix. Elle révèlera l'adresse IP du système et des informations spécifiques sur le réseau à un serveur de temps (dans le cas de l'example ci-dessous, au serveur ntp.org). Les utilisateurs ayant des problèmes de confidentialité doivent en être conscients avant de régler l'horloge système en utilisant la méthode ci-dessous.
root #ntpd -q -g

Manuellement

La commande date peut également être utilisée pour effectuer un réglage manuel de l'horloge du système. Utiliser la syntaxe MMJJhhmmAAAA (Mois, Jour, heure, minute, Année).

L'heure UTC est recommandée pour tous les systèmes Linux. Plus loin dans l'installation un fuseau horaire sera défini. Cela modifiera l'affichage de l'horloge à une heure locale.

Par exemple, pour régler la date au 3 Octobre 2016 à 13:16 :

root #date 100313162016

Choix d'une archive tar

Multilib (32 et 64 bits)

Choisir une archive tar pour le système peut faire économiser beaucoup de temps plus tard dans le processus d'installation, notamment quand il est temps de choisir un profil système. Le choix d'une archive tar impactera directement la configuration future du système et peut éviter les maux de tête dans le futur. L'archive multilib utilise des bibliothèques 64 bits lorsque cela est possible et ne se replie que sur de versions 32 bits pour régler des problèmes de compatibilité. C'est une option excellente pour la majorité des installations car elle permet une grande flexibilité de personnalisation par le futur. Ceux qui souhaitent leur système capable de changer facilement de profil devraient télécharger l'archive tar multilib pour leur architecture de processeur respective.

La plupart des utilisateurs ne devrait pas utiliser les options d'archive tar 'avancées'; elles existent pour des configurations logicielles et matérielles spécifiques.

No-multilib (64 bits pur)

Choisir une archive tar non multilib en tant que base du système fournit un environnement de système d'exploitation 64 bits complet. Cela rend la possibilité de passer à des profils multilib improbable, mais possible. Il est fortement conseillé aux utilisateurs démarrant avec Gentoo de ne pas choisir une archive tar non multilib à moins que cela ne soit absolument nécessaire.

Attention !
La migration d'un système non-multilib vers un système multilib nécessite une connaissance avancée du fonctionnement de Gentoo et de la chaîne d'outils de niveau inférieur (cela peut même faire frémir nos Toolchain developers). Ce n'est pas pour les faibles de cœur et cela dépasse largement la portée de ce guide.

Téléchargement de l'archive tar

Accéder au point de montage de Gentoo où se trouve le système de fichier racine (probablement /mnt/gentoo) :

root #cd /mnt/gentoo

En fonction du média d'installation, le seul outil nécessaire au téléchargement d'une archive tar est un navigateur web.

Navigateurs graphiques

Ceux utilisant un environnement avec des navigateurs internet graphiques n'auront aucun problème à copier l'adresse d'une archive tar depuis la section téléchargements du site principal. Sélectionner simplement l'onglet approprié, clic droit sur le lien vers l'archive tar, ensuiteCopier l'adresse du lien pour copier le lien vers le presse-papiers, puis coller le lien à l'utilitaire wget en ligne de commande pour télécharger l'archive tar :

root #wget <URL_DE_L_ARCHIVE_COLLEE>

Navigateurs en ligne de commande

Les lecteurs plus traditionnels ou utilisateurs Gentoo 'vieux jeu', travaillent exclusivement depuis la ligne de commande peuvent préférer utiliser links, un navigateur non graphique et orienté menus. Pour télécharger une archive tar, naviguer vers la liste des miroirs Gentoo comme suit :

root #links https://www.gentoo.org/downloads/mirrors/

Pour utiliser un proxy HTTP avec links, passer l’URL avec l'option http-proxy :

root #links -http-proxy proxy.server.com:8080 https://www.gentoo.org/downloads/mirrors/

Outre links, il y a également le navigateur lynx. Comme links c'est un navigateur non graphique mais celui là n'est pas orienté menus.

root #lynx https://www.gentoo.org/downloads/mirrors/

Si un proxy est nécessaire, exporter les variables http_proxy et/ou ftp_proxy :

root #export http_proxy="http://proxy.server.com:port"
root #export ftp_proxy="http://proxy.server.com:port"

Sur la liste de miroirs, choisissez-en un à proximité. En général les miroirs HTTP suffisent, mais d'autres protocoles sont également disponibles. Naviguez vers le répertoire releases/amd64/autobuilds/. Ici, toutes les archives tar disponibles sont affichées (elles peuvent être stockées dans des sous-répertoires nommés après les différents types d'architectures). Sélectionnez-en une et appuyez sur la touche d pour la télécharger.

Une fois le téléchargement de l'archive terminé, il es possible d'en vérifier l'intégrité et d'en valider son contenu. Les intéressés peuvent passer à la section suivante.

Ceux qui ne sont pas intéressés peuvent fermer le navigateur en ligne de commande en appuyant sur la touche q et peuvent aller directement à la section Extraction de l'archive tar.

Vérifier et valider

Remarque
Certaines archives sont distribuées par compression xz. Lors du téléchargement d'une archive se terminant par .tar.xz, veillez à modifier le nom du fichier .tar.bz2 dans les commandes suivantes.

Comme pour les cédéroms d'installation, il est possible de vérifier et de valider l'archive tar téléchargée. Bien que ces étapes peuvent être sautées, ces fichiers sont proposés pour les utilisateurs qui se soucient de la légitimité des fichiers qu'ils viennent de télécharger.

  • Un fichier .CONTENTS contient la liste de tous les fichiers contenus dans l'archive tar.
  • Un fichier .DIGESTS contient les sommes de contrôle de l'archive tar dans plusieurs algorithmes différents.
  • Un fichier .DIGESTS.asc qui, comme le fichier .DIGESTS, contient les sommes de contrôle de l'archive tar dans plusieurs algorithmes, mais qui est aussi signé cryptographiquement afin de s'assurer qu'il est fournit par le projet Gentoo.

Utilisez openssl et comparez les résultats avec les sommes de contrôle fournies par les fichiers .DIGESTS ou .DIGESTS.asc.

Par exemple, pour vérifier la somme de contrôle SHA512 :

root #openssl dgst -r -sha512 stage3-amd64-<release>.tar.bz2

Un autre façon est d'utiliser la commande sha512sum :

root #sha512sum stage3-amd64-<release>.tar.bz2

Pour vérifier la somme de contrôle Whirlpool :

root #openssl dgst -r -whirlpool stage3-amd64-<release>.tar.bz2

Comparer le résultat de ces commandes avec les valeurs enregistrées dans les fichiers .DIGESTS(.asc). Les valeurs doivent être identiques, sinon les fichiers téléchargés (ou le fichier digest) peuvent être corrompus.

Tout comme pour le fichier ISO, il est également possible de vérifier la signature cryptographique du fichier .DIGESTS.asc en utilisant gpg afin de s'assurer que les sommes de contrôle n'aient pas été modifiées :

root #gpg --verify stage3-amd64-<release>.tar.bz2,.DIGESTS.asc

Extraction de l'archive tar

Maintenant, extraire l'archive téléchargée sur le système. Pour ce faire, utiliser la commande tar :

root #tar xpvf stage3-*.tar.bz2 --xattrs-include='*.*' --numeric-owner

Assurez-vous que les mêmes options (xpf et --xattrs-include='*.*') sont utilisées. Le x signifie extraire, le p pour préserver les permissions et le f pour signifier que l'on veut extraire un fichier (et non l'entrée standard). --xattrs-include='*.*' permet de conserver les attributs étendus contenus dans tous les espaces de noms de l'archive. Finalement, --numeric-owner est utilisé afin d'assurer que les identifiants de groupe et d'utilisateur des fichiers extraits de l'archive restent les mêmes que ceux voulus par l'équipe de Gentoo (même si certains utilisateurs aventureux n'utilisent pas le support d'installation officiel de Gentoo).

Maintenant que l'archive est extraite, continuez avec la Configuration des options de compilation.

Configuration des options de compilation

Introduction

Pour optimiser Gentoo, il est possible de configurer un certain nombre de variables qui influent que le comportement de Portage, le gestionnaire de paquets officiel de Gentoo. Toutes ces variables peuvent être configurées en tant que variable d'environnement (en utilisant export) mais cela n'est pas permanent. Afin de conserver les configurations, Portage lit dans le fichier /etc/portage/make.conf, un fichier de configuration de Portage.

Note
Une liste commentée de toutes les variables possibles se trouve dans /mnt/gentoo/usr/share/portage/config/make.conf.example. Pour avoir une installation de Gentoo fonctionnelle, seules les variables mentionnées ci-dessous ont besoin d'être configurées.

Lancer un éditeur (dans ce guide nous utiliserons nano) pour modifier les variables d’optimisation décrites ci-dessous.

root #nano -w /mnt/gentoo/etc/portage/make.conf

En regardant dans le fichier make.conf.example, la manière dans laquelle le fichier doit être structuré est évidente : les lignes commentées démarrent par "#", les autres lignes définissent des variables en utilisant la syntaxe VARIABLE="contenu". Plusieurs de ces variables sont présentées par la suite.

CFLAGS et CXXFLAGS

Les variables CFLAGS et CXXFLAGS définissent les paramètres d'optimisation des compilateurs respectifs de GCC C et C++. Bien que ces variables ne soient généralement déjà définies ici, il est possible, pour une performance maximale, d'optimiser ces paramètres pour chaque programme séparément. La raison pour cela est que chaque programme est différent. Cependant, ceci n'est pas gérable, d'où la définition de ces paramètres dans le fichier make.conf.

Dans make.conf il faut définir les paramètres d'optimisation qui rendront le système le plus réactif en général. Ne pas utiliser de configuration expérimentale dans cette variable ; trop d'optimisation peut faire que les programmes se comportent mal (plantage, ou pire, malfonctionnement).

Nous n'expliquerons pas toutes les options d'optimisation possibles. Pour les comprendre toutes, lire le manuel en ligne de GCC (en anglais) ou la page d'infos de gcc (info gcc - fonctionne seulement sur un système Linux). Le fichier make.conf.example contient également de lui-même beaucoup d'exemples et d'informations ; ne pas oublier de le lire également.

Un première configuration est le paramètre -march= ou -mtune=, qui spécifie le nom de l'architecture cible. Les options possibles sont décrites dans le fichier make.conf.example (en tant que commentaires). Une valeur souvent utilisée est "native", qui informe au compilateur de sélectionner l'architecture cible du système utilisé (celui sur lequel est installé Gentoo).

Un second paramètre est -O (un O majuscule et non un zéro), qui permet de spécifier la classe des paramètres d'optimisation de gcc. Les classes disponibles sont s (optimisé pour la taille), 0 (zéro - pour pas d'optimisations), 1, 2 ou même 3 pour plus d'optimisations de vitesse (chaque classe à les mêmes paramètres que la précédente plus quelques extras). -O2 est le défaut recommandé. -O3 est connu pour causer des problèmes quand utilisé pour tout le système, nous recommandons donc de rester avec -O2.

Un autre paramètre d'optimisation populaire est -pipe (qui permet l'utilisation de 'pipes' à la place de fichiers temporaires pour la communication entre les différentes étapes de la compilation). Ce n'a aucun impact sur le code généré, mais utilise plus de mémoire. Sur des systèmes disposant de peu de mémoire vive, gcc peut être tué. Dans ce cas, ne pas utiliser ce paramètre.

Utiliser -fomit-frame-pointer (qui ne garde pas la structure des pointeurs dans un registre pour les fonctions qui n'en ont pas besoin) peut avoir des répercussions importantes sur le débogage des programmes.

Quand les variables CFLAGS et CXXFLAGS sont définies, combiner les paramètres d'optimisation multiples dans une seule chaîne de caractères. Les valeurs par défaut contenues dans l'archive d'étape 3 qui est extraite devraient être suffisantes. Les valeurs suivantes ne sont qu'un exemple :

CODE Exemple des variables CFLAGS et CXXFLAGS
CFLAGS="-march=native -O2 -pipe"
# Utiliser les mêmes paramètres pour les deux variables
CXXFLAGS="${CFLAGS}"
Conseil
Bien que l'article d'optimisation de GCC ne possède plus d'informations sur comment les différentes options de compilation affectent un système, l'article Safe CFLAGS peut se révéler plus pratique pour permettre aux débutants d'optimiser leurs systèmes.

MAKEOPTS

La variable MAKEOPTS définit combien de compilations parallèles peut se dérouler lors de l'installation d'un paquet. Un bon choix est le nombre de CPUs (ou cœurs du CPU) dans le système plus un, mais cette recommandation n'est pas toujours parfaite.

CODE Exemple de déclaration de MAKEOPTS dans make.conf
MAKEOPTS="-j2"

A vos marques, prêts, partez !

Mettre à jour le fichier /mnt/gentoo/etc/portage/make.conf en fonction des préférences personnelles et l'enregistrer (les utilisateurs de nano appuieront sur Ctrl+X).

Puis, continuer avec l'installation du système de base Gentoo.




Handbook:Parts/Installation/Base/


Handbook:Parts/Installation/noyau


Sommaire du manuel
Installation
‎À propos de l'installation
Choix du média
Configurer le réseau
Préparer les disques
Installer l'archive stage3
Installer le système de base
Configurer le noyau
Configurer le système
Installer les outils
Configurer le système d'amorçage
Finaliser
Utiliser Gentoo
Introduction à Portage
Les options de la variable USE
Les fonctionnalités de Portage
Scripts d'initialisation systèmes
Variables d'environnement
Utiliser Portage
Fichiers et répertoires
Les variables
Mélanger plusieurs branches logicielles
Outils supplémentaires
Dépôt personnalisé
Fonctionnalités avancées
Configuration du réseau
Bien démarrer
Configuration avancée
Les modules réseau
Sans fil
Ajouter des fonctionnalités
Gestion dynamique


Informations sur le système de fichiers

À propos de fstab

Sous Linux, toutes les partitions utilisées par le système doivent être listées dans /etc/fstab. Ce fichier contient les points de montage de ces partitions (où elles sont vues dans la structure du système de fichier), comment elles doivent être montées et avec quels paramètres (automatiquement ou non, si les utilisateurs peuvent les monter ou non, etc.)

Créer le fichier fstab

Le fichier /etc/fstab utilise un format ressemblant à celui d'un tableau. Chaque ligne comporte six champs, séparés par des espaces blancs (espace, tabulation ou les deux). Chaque champ à sa propre signification :

  1. Le premier champ indique le périphérique ou système de fichier distant à monter. Plusieurs types d'identificateurs sont disponibles pour les périphériques : chemin vers les fichiers du périphérique, étiquettes des systèmes de fichiers et UUIDs, étiquettes de partitions et UUIDs (Universally unique identifier - Identifiant universel unique).
  2. Le second champ indique le point de montage sur lequel la partition sera montée.
  3. Le troisième champ indique le système de fichier utilisé par la partition.

Le quatrième champ indique les options utilisées par mount lors du montage de la partition. Comme chaque système de fichiers à ses propres options de montage, les utilisateurs sont encouragés à lire la page de manuel de mount (man mount) pour une liste complète. Des options multiples sont séparées par une virgule.

  1. Le cinquième champ est utilisé par dump pour déterminer si la partition doit être sauvegardée ou non. Ce champ peut généralement être laissé à 0.
  2. Le sixième champ est utilisé par fsck pour déterminer dans quel ordre les systèmes de fichiers doivent être vérifiés si le système n'a pas été terminé correctement. Le système de fichier root devrait être à 1 et les autres à 2 (ou 0 si une vérification n'est pas nécessaire).
Important
Le fichier /etc/fstab par défaut fourni par Gentoo n'est pas un fichier /etc/fstab valide, mais juste une sorte de modèle.
root #nano -w /etc/fstab

Dans le reste de l'article, nous utilisons le fichier de bloc de périphérique par défaut /dev/sd* comme partition.

Étiquettes de systèmes de fichiers et UUIDs

MBR (BIOS) et GPT incluent tous les deux le support pour les étiquettes de système de fichiers et les UUIDs de système de fichiers. Ces attributs peuvent être définis dans /etc/fstab comme alternatives lors de l'utilisation de la commande mount pour détecter et monter les blocs de périphériques. Les étiquettes de système de fichiers et les UUIDs de système de fichiers sont identifiés par le préfixe LABEL et UUID et peuvent être visualisés grâce à la commande blkid :

root #blkid
Attention !
Si le système de fichiers à l'intérieur de la partition est supprimé, alors les valeurs d'étiquettes et d'UUIDs seront également modifiées ou supprimées.

En raison de leur unicité, les lecteurs utilisant des tables de partitions de type MBR sont recommandés d'utiliser les UUIDs à la place des étiquettes pour définir les volumes montables dans /etc/fstab.

Étiquettes de partitions et UUIDs

Les utilisateurs qui opté pour l'utilisation de GPT ont quelques options plus robustes disponibles afin de définir les partitions dans /etc/fstab. Les étiquettes de partition et les UUIDs de partition peuvent être utilisés pour identifier les partitions individuelles du bloc de périphérique, quel que soit le système de fichiers choisi pour la partition elle-même. Les étiquettes de partition et les UUIDs sont identifiés par les préfixes PARTLABEL et PARTUUID respectivement et peuvent être consultés dans le terminal en exécutant la commande blkid :

root #blkid

Bien que pas toujours vrai pour les étiquettes de partition, utiliser un UUID pour identifier une partition dans fstab garantit que le chargeur de démarrage ne sera pas confus en cherchant un volume spécifique, même si le système de fichiers change dans l'avenir. L'utilisation des anciens fichiers de bloc de périphériques par défaut (/dev/sd*N) pour définir les partitions dans fstab est risquée pour les systèmes qui sont redémarrés régulièrement et qui possèdent des blocs de périphériques SATA régulièrement ajoutés ou supprimés.

La dénomination des fichiers de périphériques de bloc dépend d'un certain nombre de facteurs, y compris comment et dans quel ordre les disques sont attachés au système. Ils peuvent également apparaître dans un ordre différent en fonction duquel les périphériques sont détectés par le noyau au cours du processus de démarrage. Cela étant dit, à moins que l'on ait l'intention de constamment jouer avec la commande de disque, l'utilisation des fichiers de périphériques par défaut est une approche simple et directe.


Regardons comment noter les options pour la partition /boot/. Ceci n'est qu'un exemple et doit être modifié en fonctions des décisions prises plus tôt dans l'installation. Dans notre exemple de partitionnement amd64, /boot/ est généralement la /dev/sda2 partition, avec ext2 comme système de fichier. Cette partition nécessite d'être vérifiée lors du délarrage et nous écrirons donc :

FILE /etc/fstabUne exemple de ligne /boot pour /etc/fstab
/dev/sda2   /boot     ext2    defaults        0 2

Certains utilisateurs ne veulent pas que leur partition /boot/ soit montée automatiquement afin d'augmenter la sécurité de leur système. Ces personnes doivent remplacer defaults par noauto. Cela signifie que ces utilisateurs devront monter manuellement cette partition à chaque fois qu'ils voudront l'utiliser.

Ajouter les règles qui correspondent au schéma de partitionnement décidé précédemment et ajouter des règles pour les périphériques tels que les lecteurs de CD-ROM, et bien sûr, si d'autres partitions ou lecteurs sont utilisés, pour ceux-là également.

Ci-dessous est un exemple plus élaboré de fichier /etc/fstab :


FILE /etc/fstabUn exemple complet de fichier /etc/fstab
/dev/sda2   /boot        ext2    defaults,noatime     0 2
/dev/sda3   none         swap    sw                   0 0
/dev/sda4   /            ext4    noatime              0 1
  
/dev/cdrom  /mnt/cdrom   auto    noauto,user          0 0

Quand auto est utilisé en tant que troisième champ, cela fait deviner à la commande mount le système de fichiers utilisé. Cela est recommandé pour les supports amovibles car ils peuvent être créés avec des systèmes de fichiers différents. L'option user dans le quatrième champ rend possible pour les utilisateurs non root de monter le CD.

Afin d'améliorer les performances, la plupart des utilisateurs ajoute l'option de montage noatime, ce qui résulte en un système plus rapide car les temps d'accès ne sont pas enregistrés (ceux ci ne sont pas utilisés de manière générale de toute façon). Cela est également recommandé pour les utilisateurs de disques SSDs, qui devraient aussi activer l'option de montage discard (seulement pour ext4 et btrfs à l'heure actuelle) ce qui permet à la commande TRIM de fonctionner.

Bien vérifier le fichier /etc/fstab, sauvegarder, puis quitter avant de continuer.

Informations de mise en réseau

Informations sur l'hôte et le domaine

L'un des choix qu incombe l'utilisateur est de nommer son ordinateur. Cela peut sembler assez facile, mais la plupart des utilisateurs ont des difficultés à trouver le nom approprié pour leur ordinateur Linux. Pour aider, il est bon de savoir que cette décision n'est pas finale - cela peut être changé par la suite. Dans les exemples ci-dessous, le nom d'hôte tux est utilisé avec le domaine homenetwork.

root #nano -w /etc/conf.d/hostname
# Paramétrer la variable de nom d'hôte avec le nom choisi 
hostname="tux"

Deuxièmement, si un nom de domaine est nécessaire, le paramétrer dans /etc/conf.d/net. Cela est seulement nécessaire si le fournisseur d'accès Internet ou l'administrateur réseau le signale, ou si le réseau possède un serveur DNS mais pas de serveur DHCP. Ne pas s'inquiéter à propos des DNS ou noms de domaine si le système utilise DHCP pour une allocation d'adresse IP et de configuration réseau dynamique.

Note
Le fichier /etc/conf.d/net n'existe pas par défaut, il a donc besoin d'être créé.
root #nano -w /etc/conf.d/net
# Configurer la variable dns_domain_lo avec le nom de domaine choisi.
dns_domain_lo="homenetwork"
Note
Si aucun nom de domaine est configuré, les utilisateurs verront qu'ils obtiennent le message "This is hostname.(none)" à l'écran de connexion. Cela peut se fixer en éditant /etc/issue et en supprimant la chaîne de caractères .\O de ce fichier.

Si un domaine NIS est nécessaire (les utilisateurs qui ne savent pas s'ils en ont besoin, n'en ont pas besoin), le définir également :

root #nano -w /etc/conf.d/net
# Configurer la variable nis_domain_lo au nom de domaine NIS choisi.
nis_domain_lo="my-nisdomain"
Note
Pour plus d'information sur la configuration de DNS et NIS, se référer aux exemples donnés dans /usr/share/doc/netifrc-*/net.example.bz2 qui peut être lu avec bzless. Aussi, il peut être intéressant d'installer le paquet net-dns/openresolv afin d'aider à la configuration de NIS/DNS.

Configurer le réseau

Lors de l'installation de Gentoo Linux, la mise en réseau a déjà été configurée. Cependant, c'était pour le cédérom d'installation et pas pour l'environnement installé. Ici, la configuration du réseau est réalisée pour le système Gentoo Linux installé.

Note
Une information plus détaillée sur la mise en réseau, incluant des sujets avancés comme bonding, bridging, 802.1Q VLANs ou les réseaux sans fils se trouve dans la section sur Configuration Réseau sous Gentoo.

Toutes les informations concernant la mise en réseau sont regroupées dans le fichier /etc/conf.d/net. Ce fichier utiliser un syntaxe directe mais peu intuitive. Pas de panique, tout est expliqué plus bas. Une exemple complet et commenté couvrant plusieurs configurations possibles se trouve dans /usr/share/doc/netifrc-*/net.example.bz2.

D'abord, installer net-misc/netifrc :

root #emerge --ask --noreplace net-misc/netifrc

DHCP est utilisé par défaut. Pour que DHCP fonctionne, un client DHCP doit être installé. Cela est expliqué plus tard lors de l'installation des outils systèmes nécessaires.

SI la connexion au réseau doit être configurée à cause d'options DHCP spécifiques or car DHCP n'est pas du tout utilisé, alors ouvrir le fichier /etc/conf.d/net :

root #nano -w /etc/conf.d/net

Configurer les deux variables config_eth0 et routes_eth0 avec les informations d'adresse IP et de routage appropriées :

Note
On assume que l'interface réseau s’appellera eth0. Cela est, cependant, entièrement dépendant du système. Il est recommandé d'assumer que l'interface portera la même nom que lors du démarrage depuis le support d'installation si le support d'installation utilisé est suffisamment récent.
FILE /etc/conf.d/netDéfinition d'un adresse IP statique
config_eth0="192.168.0.2 netmask 255.255.255.0 brd 192.168.0.255"
routes_eth0="default via 192.168.0.1"

Pour utiliser DHCP, définir la variable config_eth0>/var> :

FILE /etc/conf.d/netParamétrage DHCP
config_eth0="dhcp"

Lire /usr/share/doc/netifrc-*/net.example.bz2 pour une liste de toutes les options disponibles. Lire également la page de manuel de DHCP si des options spécifiques doivent être utilisées.

Si le système possède plusieurs interfaces réseau, répéter les étapes précédentes pour config_eth1, config_eth2, etc.

Sauvegarder la configuration et quitter avant de continuer.

Démarrer automatiquement la mise en réseau au démarrage

Pour activer les interfaces réseau lors du démarrage, elles doivent être ajoutées au runlevel par défaut.

root #cd /etc/init.d
root #ln -s net.lo net.eth0
root #rc-update add net.eth0 default

Si le système possède plusieurs interfaces réseau, les fichiers appropriés net.* doivent être crées de la même manière que pour net.eth0.

Si après le démarrage du système, nous découvrons que l'hypothèse sur le nom de l'interface réseau (qui est actuellement documentée comme eth0) est erronée, exécuter les étapes suivantes afin de rectifier le problème :

  1. Mettre à jour le fichier /etc/conf.d/net favec le nom d'interface correct (comme enp3s0 au lieu de eth0).
  2. Créer un nouveau lien symbolique (comme /etc/init.d/net.enp3s0).
  3. Supprimer l'ancien lien symbolique (rm /etc/init.d/net.eth0).
  4. Ajouter le nouveau au runlevel par défaut.
  5. Supprimer l'ancien en utilisant la commande rc-update del net.eth0 default.

Le fichier d'hôtes

Ensuite, informer Linux sur l'environnement réseau. Cela se fait dans le fichier /etc/hosts et aide à la résolution des noms de domaines aux adresses IPs pour les hôtes qui ne sont pas résolus par les serveurs de noms.

root #nano -w /etc/hosts
FILE /etc/hostsRemplir les informations réseau
# Cela définie le système actuelle et doit être mis
127.0.0.1     tux.homenetwork tux localhost
  
# Définitions optionnelles d'autres systèmes sur le réseau
192.168.0.5   jenny.homenetwork jenny
192.168.0.6   benny.homenetwork benny

Sauvegarder et quitter l'éditeur pour continuer.

Optionnel : Faire fonctionner PCMCIA

Les utilisateurs de PCMCIA doivent maintenant installer le paquet sys-apps/pcmciautils.

root #emerge --ask sys-apps/pcmciautils

Informations système

Mot de passe root

Configurer le mot de passe root en utilisant la commande passwd.

root #passwd

Le compte Linux root est un compte des plus puissants, il est donc important de choisir un mot de passe fort. Plus tard, un compte utilisateur régulier sera créé pour les utilisations quotidiennes.

Configuration de l'initialisation et du démarrage

Gentoo (du moins lors de l'utilisation d'OpenRC) utilise le fichier /etc/rc.conf pour configurer les services, le démarrage et l'arrêt d'un système. Ouvrir /etc/rc.conf et s'émerveiller devant tous les commentaires du fichier. Vérifier les configurations et les modifier si nécessaire.

root #nano -w /etc/rc.conf

Ensuite, ouvrir le fichier /etc/conf.d/keymaps afin de gérer la configuration du clavier. Le modifier pour configurer et sélectionner le bon clavier.

root #nano -w /etc/conf.d/keymaps

Prendre bien soin lors de la configuration de la variable keymap. Si le mauvais schéma de clavier est sélectionné, il se passera des choses bizarres lors de l'utilisation du clavier.

Finalement, modifier le fichier /etc/conf.d/hwclock afin de configurer les options d'horloge.

root #nano -w /etc/conf.d/hwclock

Si l'horloge matérielle n'utilise pas UTC, il est nécessaire de configurer clock="local" dans le fichier. Sinon le système peut montrer des comportements d'horloge faussés.




Sommaire du manuel
Installation
‎À propos de l'installation
Choix du média
Configurer le réseau
Préparer les disques
Installer l'archive stage3
Installer le système de base
Configurer le noyau
Configurer le système
Installer les outils
Configurer le système d'amorçage
Finaliser
Utiliser Gentoo
Introduction à Portage
Les options de la variable USE
Les fonctionnalités de Portage
Scripts d'initialisation systèmes
Variables d'environnement
Utiliser Portage
Fichiers et répertoires
Les variables
Mélanger plusieurs branches logicielles
Outils supplémentaires
Dépôt personnalisé
Fonctionnalités avancées
Configuration du réseau
Bien démarrer
Configuration avancée
Les modules réseau
Sans fil
Ajouter des fonctionnalités
Gestion dynamique


Journalisation du système

Quelques outils sont absents de l'archive tar d'étape 3 car plusieurs paquets fournissent la même fonctionnalité. Le choix est laissé à l'utilisateur de savoir quels paquets installer.

Le premier outil sur lequel un choix doit se faire est un outil de journalisation pour le système. Unix et Linux ont un historique excellent de capacités de journalisations - si besoin, tout ce qui se passe sur le système peut être enregistré dans des journaux.

Gentoo offre plusieurs utilitaires de journalisation, notamment :

  • app-admin/sysklogd - Offre l'ensemble traditionnel des démons de journalisation système. La configuration par défaut fonctionne correctement ce qui fait de ce paquet une bonne option pour les débutants.
  • app-admin/syslog-ng - Un système de journalisation avancé. Nécessite une configuration supplémentaire pour fonctionner au delà de la journalisation dans un seul gros fichier. Les utilisateurs avancés peuvent choisir ce système de journalisation du fait de son potentiel mais attention, un configuration est nécessaire pour une journalisation intelligente.
  • app-admin/metalog - Un système de journalisation hautement configurable.

D'autres sont disponibles depuis Portage - le nombre de paquets disponibles augmente tous les jours.

Conseil
Si sysklogd ou syslog-ng sont utilisés, il est recommandé d'installer et de configurer logrotate par la suite car ces outils de journalisation ne proposent pas de de mécanisme de rotation des journaux d’événements.
Conseil
systemd fournit sa propre fonction de journalisation appelée "journal". L'installation d'un système de journalisation est facultative sur les systèmes exécutant systemd et peut nécessiter une configuration supplémentaire pour que le démon syslog lise les messages du journal.

Pour installer l'outil de journalisation désiré, installez-le et ajoutez-le au niveau d'exécution par défaut en utilisant rc-update. L'exemple suivant installe app-admin/sysklogd :

root #emerge --ask app-admin/sysklogd
root #rc-update add sysklogd default

Facultatif : daemon Cron

Ensuite viens le daemon cron. Bien que cela soit facultatif et pas nécessaire pour tous les systèmes, il est judicieux d'en installer un.

Un démon cron exécute des commandes programmées. Cela est très utile si certaines commandes doivent être exécutées régulièrement (à intervalle quotidienne, hebdomadaire ou mensuelle).

Gentoo offre plusieurs démons cron possibles, notamment sys-process/bcron, sys-process/dcron, sys-process/fcron, et sys-process/cronie. Installer l'un d'entre eux est similaire à l'installation d'un système de journalisation. L'exemple suivant utilise sys-process/cronie :

root #emerge --ask sys-process/cronie
root #rc-update add cronie default

Si dcron ou frcon sont utilisés, un commande d'initialisation supplémentaire doit être exécutée :

root #crontab /etc/crontab

Facultatif : Indexation des fichiers

Pour indéxer le système de fichiers afin de fournir des fonctions de recherche plus rapides, installez sys-apps/mlocate.

root #emerge --ask sys-apps/mlocate

Facultatif : Accès distant

Pour pouvoir accéder au système à distance après l'installation, ajoutez le script sshd au niveau d'exécution par défaut :

root #rc-update add sshd default

Si l'accès à la console série est nécessaire (ce qui est possible dans le cas de serveurs distants), décommentez la section console série dans /etc/inittab :

root #nano -w /etc/inittab
# SERIAL CONSOLES
s0:12345:respawn:/sbin/agetty 9600 ttyS0 vt100
s1:12345:respawn:/sbin/agetty 9600 ttyS1 vt100

Outils de systèmes de fichiers

En fonction des systèmes de fichiers utilisés, il est nécessaire d'installer les utilitaires de systèmes de fichiers requis (pour vérifier l'intégrité su système de fichiers, créer des systèmes de fichiers additionnels, etc.). Noter que les outils pour gérer les système de fichiers ext2, ext3 ou ext4 (sys-fs/e2fsprogs) sont déjà installé dans le cadre de l'ensemble @system.

Le tableau suivant liste les outils à installer si un certain système de fichiers est installé :

Système de fichiers Paquet
Ext2, 3, and 4 sys-fs/e2fsprogs
XFS sys-fs/xfsprogs
ReiserFS sys-fs/reiserfsprogs
JFS sys-fs/jfsutils
VFAT (FAT32, ...) sys-fs/dosfstools
Btrfs sys-fs/btrfs-progs

Template:Tip/Fr

Outils de mise en réseau

Si il n'est pas nécessaire d'installer d'outils de mise en réseau supplémentaires, continuer immédiatement avec la section sur la Configuration d'un système d'amorçage

Installer un client DHCP

Important
Bien que facultatif, la majorité des utilisateurs nécessitent un client DHCP pour se connecter au serveur DHCP de leur réseau. Profiter de cette opportunité pour installer un client DHCP. Ci cette étape est oubliée, le système peut alors être incapable de se connecter au réseau rendant ainsi impossible le téléchargement d'un client DHCP par la suite.

Pour que le système obtienne automatiquement une adresse IP pour un ou plusieurs interfaces réseau utilisant des scripts netifrc, il est nécessaire d'installer un client DHCP. Nous recommandons l'utilisation du paquet net-misc/dhcpcd même si de nombreux autres client DHCP sont disponibles dans le répertoire Gentoo :

root #emerge --ask net-misc/dhcpcd

Plus d'informations sur dhcpcd se trouvent dans l'article sur dhcpcd.

Facultatif : Installer un client PPPoE

SI PPP est utilisé pour se connecter à Internet, installer le paquet net-dialup/ppp :

root #emerge --ask net-dialup/ppp

Facultatif: Installer des outils de réseau sans fil

Si le système doit se connecter à des réseaux sans fil, installez le paquet net-wireless/iw pour les réseaux Open ou WEP et/ou le paquet net-wireless/wpa_supplicant pour les réseaux WPA ou WPA2. . iw est également un outil de diagnostic utile pour scanner les réseaux sans fil.

root #emerge --ask net-wireless/iw net-wireless/wpa_supplicant

Maintenant, continuer avec la Configuration du système d'amorçage




AMD64 Handbook
Installation
About the installation
Choosing the media
Configuring the network
Preparing the disks
Installing stage3
Installing base system
Configuring the kernel
Configuring the system
Installing tools
Configuring the bootloader
Finalizing
Working with Gentoo
Portage introduction
USE flags
Portage features
Initscript system
Environment variables
Working with Portage
Files and directories
Variables
Mixing software branches
Additional tools
Custom package repository
Advanced features
Network configuration
Getting started
Advanced configuration
Modular networking
Wireless
Adding functionality
Dynamic management



Selecting a boot loader

With the Linux kernel configured, system tools installed and configuration files edited, it is time to install the last important piece of a Linux installation: the boot loader.

The boot loader is responsible for firing up the Linux kernel upon boot - without it, the system would not know how to proceed when the power button has been pressed.

For amd64, we document how to configure either GRUB2 or LILO for BIOS based systems, and GRUB2 or efibootmgr for UEFI systems.

In this section of the Handbook a delineation has been made between emerging the boot loader's package and installing a boot loader to a system disk. Here the term emerge will be used to ask Portage to make the software package available to the system. The term install will signify the boot loader copying files or physically modifying appropriate sections of the system's disk drive in order to render the boot loader activated and ready to operate on the next power cycle.

Default: GRUB2

Previously, Gentoo Linux used what is now called GRUB Legacy as the recommended boot loader. As the name implies, the older GRUB package is no longer actively maintained and has been superseded by GRUB2. For more information about the legacy GRUB, please refer to its GRUB article.

By default, the majority of Gentoo systems now rely upon GRUB2 (found in the sys-boot/grub package), which is the direct successor to GRUB Legacy. With no additional configuration, GRUB2 gladly supports older BIOS ("pc") systems. With a small amount of configuration, necessary before build time, GRUB2 can support more than a half a dozen additional platforms. For more information, consult the Prerequisites section of the GRUB2 article.

Emerge

When using an older BIOS system supporting only MBR partition tables, no additional configuration is needed in order to emerge GRUB:

root #emerge --ask --verbose sys-boot/grub:2

A note for UEFI users: running the above command will output the enabled GRUB_PLATFORMS values before emerging. When using UEFI capable systems, users will need to ensure GRUB_PLATFORMS="efi-64" is enabled (as it is the case by default). If that is not the case for the setup, GRUB_PLATFORMS="efi-64" will need to be added to the /etc/portage/make.conf file before emerging GRUB2 so that the package will be built with EFI functionality:

root #echo 'GRUB_PLATFORMS="efi-64"' >> /etc/portage/make.conf
root #emerge --ask sys-boot/grub:2
If GRUB2 was somehow emerged without enabling GRUB_PLATFORMS="efi-64", the line (as shown above) can be added to make.conf then and dependencies for the world package set re-calculated by passing the --update --newuse options to emerge:
root #emerge --ask --update --newuse --verbose sys-boot/grub:2

The GRUB2 software has now been merged to the system, but not yet installed.

Install

Next, install the necessary GRUB2 files to the /boot/grub/ directory via the grub-install command. Presuming the first disk (the one where the system boots from) is /dev/sda, one of the following commands will do:

  • When using BIOS:
root #grub-install /dev/sda
  • When using UEFI:
Important
Make sure the EFI system partition has been mounted before running grub-install. It is possible for grub-install to install the GRUB EFI file (grubx64.efi) into the wrong directory without providing any indication the wrong directory was used.
root #grub-install --target=x86_64-efi --efi-directory=/boot
Note
Modify the --efi-directory option to the root of the EFI System Partition. This is necessary if the /boot partition was not formatted as a FAT variant.
Important
If grub_install returns an error like Could not prepare Boot variable: Read-only file system, it may be necessary to remount the efivars special mount as read-write in order to succeed:
root #mount -o remount,rw /sys/firmware/efi/efivars

Some motherboard manufacturers seem to only support the /efi/boot/ directory location for the .EFI file in the EFI System Partition (ESP). The GRUB installer can perform this operation automatically with the --removable option. Verify the ESP is mounted before running the following commands. Presuming the ESP is mounted at /boot (as suggested earlier), execute:

root #grub-install --target=x86_64-efi --efi-directory=/boot --removable

This creates the default directory defined by the UEFI specification, and then copies the grubx64.efi file to the 'default' EFI file location defined by the same specification.

Configure

Next, generate the GRUB2 configuration based on the user configuration specified in the /etc/default/grub file and /etc/grub.d scripts. In most cases, no configuration is needed by users as GRUB2 will automatically detect which kernel to boot (the highest one available in /boot/) and what the root file system is. It is also possible to append kernel parameters in /etc/default/grub using the GRUB_CMDLINE_LINUX variable.

To generate the final GRUB2 configuration, run the grub-mkconfig command:

root #grub-mkconfig -o /boot/grub/grub.cfg
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-3.16.5-gentoo
Found initrd image: /boot/initramfs-genkernel-amd64-3.16.5-gentoo
done

The output of the command must mention that at least one Linux image is found, as those are needed to boot the system. If an initramfs is used or genkernel was used to build the kernel, the correct initrd image should be detected as well. If this is not the case, go to /boot/ and check the contents using the ls command. If the files are indeed missing, go back to the kernel configuration and installation instructions.

Tip
The os-prober utility can be used in conjunction with GRUB2 to detect other operating systems from attached drives. Windows 7, 8.1, 10, and other distributions of Linux are detectable. Those desiring dual boot systems should emerge the sys-boot/os-prober package then re-run the grub-mkconfig command (as seen above). If detection problems are encountered be sure to read the GRUB2 article in its entirety before asking the Gentoo community for support.

Alternative 1: LILO

Emerge

LILO, the LInuxLOader, is the tried and true workhorse of Linux boot loaders. However, it lacks features when compared to GRUB. LILO is still used because, on some systems, GRUB does not work and LILO does. Of course, it is also used because some people know LILO and want to stick with it. Either way, Gentoo supports both bootloaders.

Installing LILO is a breeze; just use emerge.

root #emerge --ask sys-boot/lilo

Configure

To configure LILO, first create /etc/lilo.conf:

root #nano -w /etc/lilo.conf

In the configuration file, sections are used to refer to the bootable kernel. Make sure that the kernel files (with kernel version) and initramfs files are known, as they need to be referred to in this configuration file.

Note
If the root filesystem is JFS, add an append="ro" line after each boot item since JFS needs to replay its log before it allows read-write mounting.
FILE /etc/lilo.confExample LILO configuration
boot=/dev/sda             # Install LILO in the MBR
prompt                    # Give the user the chance to select another section
timeout=50                # Wait 5 (five) seconds before booting the default section
default=gentoo            # When the timeout has passed, boot the "gentoo" section
compact                   # This drastically reduces load time and keeps the map file smaller; may fail on some systems
  
image=/boot/vmlinuz-3.16.5-gentoo
  label=gentoo            # Name we give to this section
  read-only               # Start with a read-only root. Do not alter!
  root=/dev/sda4          # Location of the root filesystem
  
image=/boot/vmlinuz-3.16.5-gentoo
  label=gentoo.rescue     # Name we give to this section
  read-only               # Start with a read-only root. Do not alter!
  root=/dev/sda4         # Location of the root filesystem
  append="init=/bin/bb"   # Launch the Gentoo static rescue shell
  
# The next two lines are for dual booting with a Windows system.
# In this example, Windows is hosted on /dev/sda6.
other=/dev/sda6
  label=windows
Note
If a different partitioning scheme and/or kernel image is used, adjust accordingly.

If an initramfs is necessary, then change the configuration by referring to this initramfs file and telling the initramfs where the root device is located:

FILE /etc/lilo.confAdding initramfs information to a boot entry
image=/boot/vmlinuz-3.16.5-gentoo
  label=gentoo
  read-only
  append="root=/dev/sda4"
  initrd=/boot/initramfs-genkernel-amd64-3.16.5-gentoo

If additional options need to be passed to the kernel, use an append statement. For instance, to add the video statement to enable framebuffer:

FILE /etc/lilo.confAdding video parameter to the boot options
image=/boot/vmlinuz-3.16.5-gentoo
  label=gentoo
  read-only
  root=/dev/sda4
  append="video=uvesafb:mtrr,ywrap,1024x768-32@85"

Users that used genkernel should know that their kernels use the same boot options as is used for the installation CD. For instance, if SCSI device support needs to be enabled, add doscsi as kernel option.

Now save the file and exit.

Install

To finish up, run the /sbin/lilo executable so LILO can apply the /etc/lilo.conf settings to the system (i.e. install itself on the disk). Keep in mind that /sbin/lilo must be executed each time a new kernel is installed or a change has been made to the lilo.conf file in order for the system to boot if the filename of the kernel has changed.

root #/sbin/lilo

Alternative 2: efibootmgr

On UEFI based systems, the UEFI firmware on the system (in other words the primary bootloader), can be directly manipulated to look for UEFI boot entries. Such systems do not need to have additional (also known as secondary) bootloaders like GRUB2 in order to help boot the system. With that being said, the reason EFI-based bootloaders such as GRUB2 exist is to extend the functionality of UEFI systems during the boot process. Using efibootmgr is really for those who desire to take a minimalist (although more rigid) approach to booting their system; using GRUB2 (see above) is easier for the majority of users because it offers a flexible approach when booting UEFI systems.

Remember sys-boot/efibootmgr application is not a bootloader; it is a tool to interact with the UEFI firmware and update its settings, so that the Linux kernel that was previously installed can be booted with additional options (if necessary), or to allow multiple boot entries. This interaction is done through the EFI variables (hence the need for kernel support of EFI vars).

Be sure to read through the EFI stub kernel article before continuing. The kernel must have specific options enabled to be directly bootable by the system's UEFI firmware. It might be necessary to recompile the kernel. It is also a good idea to take a look at the efibootmgr article.

Note
To reiterate, efibootmgr is not a requirement to boot an UEFI system. The Linux kernel itself can be booted immediately, and additional kernel command-line options can be built-in to the Linux kernel (there is a kernel configuration option called that allows the user to specify boot parameters as command-line options. Even an initramfs can be 'built-in' to the kernel.

Those that have decided to take this approach must install the software:

root #emerge --ask sys-boot/efibootmgr

Then, create the /boot/efi/boot/ location, and then copy the kernel into this location, calling it bootx64.efi:

root #mkdir -p /boot/efi/boot
root #cp /boot/vmlinuz-* /boot/efi/boot/bootx64.efi

Next, tell the UEFI firmware that a boot entry called "Gentoo" is to be created, which has the freshly compiled EFI stub kernel:

root #efibootmgr --create --disk /dev/sda --part 2 --label "Gentoo" --loader "\efi\boot\bootx64.efi"

If an initial RAM file system (initramfs) is used, add the proper boot option to it:

root #efibootmgr -c -d /dev/sda -p 2 -L "Gentoo" -l "\efi\boot\bootx64.efi" initrd='\initramfs-genkernel-amd64-3.16.5-gentoo'
Note
The use of \ as directory separator is mandatory when using UEFI definitions.

With these changes done, when the system reboots, a boot entry called "Gentoo" will be available.

Alternative 3: Syslinux

Syslinux is yet another bootloader alternative for the amd64 architecture. It supports MBR and, as of version 6.00, it supports EFI boot. PXE (network) boot and lesser-known options are also supported. Although Syslinux is a popular bootloader for many it is unsupported by the Handbook. Readers can find information on emerging and then installing this bootloader in the Syslinux article.


Rebooting the system

Exit the chrooted environment and unmount all mounted partitions. Then type in that one magical command that initiates the final, true test: reboot.

root #exit
cdimage ~#cd
cdimage ~#umount -l /mnt/gentoo/dev{/shm,/pts,}
cdimage ~#umount -R /mnt/gentoo
cdimage ~#reboot

Do not forget to remove the bootable CD, otherwise the CD might be booted again instead of the new Gentoo system.

Once rebooted in the freshly installed Gentoo environment, finish up with Finalizing the Gentoo installation.




Handbook:Parts/Installation/Finaliser


Warning: Display title "Gentoo Linux amd64 Handbook: Installing Gentoo" overrides earlier display title "Handbook:AMD64/Full/Installation/fr".