Gentoo Logo

1.  Faites votre choix

Introduction

Maintenant que votre noyau est configuré et compilé et que les fichiers de configuration du système sont correctement paramétrés, il est temps d'installer le programme qui charge le noyau au démarrage de votre machine. Un tel programme est appelé un chargeur de démarrage (« bootloader » en anglais).

Pour ${arch}, Gentoo Linux vous propose GRUB2, LILO et GRUB Patrimonial.

Vous devriez maintenant installer le chargeur de démarrage elilo.

1.  Defaut: Utilisation de GRUB2

Installer GRUB2

GRUB2 est fourni par le paquet sys-boot/grub.

Exemple de code 1.1 : Installer GRUB2

# emerge sys-boot/grub

Le programme GRUB2 est désormais installé sur le système, mais pas encore activé.

Configurer GRUB2

Tout d'abord, installons les fichiers nécessaires à GRUB2 dans /boot/grub. En supposant que le premier disque (celui à partir duquel le système démarre) est /dev/sda, la commande suivante le fera pour nous :

Exemple de code 1.1 : Installer les fichiers nécessaires à GRUB2 dans /boot/grub

# grub2-install /dev/sda

Nous pouvons maintenant générer la configuration GRU2 qui se basera sur la configuration que l'utilisateur a spécifiée dans le fichier /etc/default/grub et dans les scripts /etc/grub.d . La plupart du temps, aucune configuration n'est requise par les utilisateurs car GRUB2 détecte automatiquement quel noyau démarrer (le plus récent disponible dans /boot) et quel est le système de fichiers racine.

Pour générer la configuration GRUB2 final, exécutez la commande grub2-mkconfig :

Exemple de code 1.1 : Générer la configuration de GRUB2

# grub2-mkconfig -o /boot/grub/grub.cfg
Generating grub.cfg ...
Found linux image: /boot/${kernel-name}
Found initrd image: /boot/${genkernel-initrd}
done

La sortie de la commande doit mentionner qu'au moins une image Linux a été trouvée, car celles-ci sont nécessaire au démarrage du système. Si vous utilisez un système de fichiers virtuel de démarrage (initramfs) ou si vous avez utilisé genkernel pour compiler le noyau, l'image du disque virtuel de démarrage (initrd) devrait être détectée elle-aussi. Si ce n'est pas le cas, rendez-vous dans /boot aet vérifiez-en le contenu avec la commande ls. Si les fichiers sont en effet manquants, relisez les instructions de configuration et d'installation du noyau.

1.  Alternative : LILO

Installer LILO

LILO (LInux LOader, ou chargeur Linux) est le chargeur historique de Linux, mais il lui manque des fonctionnalités présentes dans GRUB, ce qui explique que GRUB est en train de prendre le dessus. La raison pour laquelle LILO est encore utilisé est que GRUB ne fonctionne pas sur certains systèmes, alors que LILO fonctionne sur ces mêmes systèmes. Évidemment, beaucoup d'utilisateurs connaissent mieux LILO que GRUB et veulent le conserver. De toute façon, Gentoo supporte les deux, et vous avez apparemment choisi LILO.

Installer LILO est enfantin ; utilisez emerge.

Exemple de code 1.1 : installer LILO

# emerge lilo

Configurer LILO

Pour configurer LILO, vous devez créer le fichier /etc/lilo.conf. Lancez votre éditeur préféré (notre exemple utilise nano) et créez le fichier.

Exemple de code 1.1 : créer /etc/lilo.conf

# nano -w /etc/lilo.conf

Nous vous avions demandé de mémoriser le nom de l'image de votre noyau. Dans l'exemple ci-dessous, lilo.conf ,nous utilisons les partitions créées plus tôt dans ce manuel.

Assurez-vous d'utiliser votre propre nom de l'image du noyau ainsi que, si approprié, votre propre nom de l'image du disque virtuel de démarrage (initrd).

Note : si vous avez utilisé le système de fichiers JFS, vous devez ajouter une ligne append="ro" après chaque item de démarrage (section) pour que JFS puisse récupérer son journal avant que le système de fichiers ne soit monté en lecture/écriture.

Exemple de code 1.1 : exemple de /etc/lilo.conf

boot=/dev/sda             # Installe LILO dans le MBR
prompt                    # Donne à l'utilisateur la possibilité de choisir une autre section
timeout=50                # Attendre 5 (cing) secondes avant de démarrer la section par défaut
default=gentoo            # Quand le délai s'est écoulé démmarre la section "gentoo" 

image=/boot/${kernel-name}
  label=gentoo            # Non donné à cette section
  read-only               # Démarrer avec une racine en lecture seule. Ne pas changer!
  root=/dev/sda4          # Emplacement du système de fichiers racine (root)

image=/boot/${kernel-name}
  label=gentoo.rescue     # Non donné à cette section
  read-only               # Démarrer avec une racine en lecture seule. Ne pas changer!
  root=/dev/sda4          # Emplacement du système de fichiers racine (root)
  append="init=/bin/bb"   # Lancer le shell de secours de Gentoo

# Les deux lignes qui suivent sont seulement pour un dual-boot avec un système Windows.
# En l'occurrence Windows est implanté sur /dev/sda6.
other=/dev/sda6
  label=windows

Note : si vos partitions sont agencées d'une autre façon ou si vous utilisez un autre noyau, ajustez les valeurs en conséquence.

Si lors de la compilation du noyau, vous avez choisi d'inclure un disque virtuel de démarrage (initramfs) sur lequel démarrer, vous devez changer la configuration pour faire référence à ce disque virtuel et pour indiquer à initramfs, où se trouve le disque physique root :

Exemple de code 1.1 : extrait de LILO pour un noyau compilé avec initramfs activé

image=/boot/${kernel-name}
  label=gentoo
  read-only
  append="real_root=/dev/sda4"
  initrd=/boot/${genkernel-initrd}

Si vous devez passer d'autres options à votre noyau, ajoutez une commande append dans la section ad hoc. Par exemple, pour passer video pour activer le tampon de trames, faites :

Exemple de code 1.1 : utiliser append pour passer une option au noyau

image=/boot/${kernel-name}
  label=gentoo
  read-only
  root=/dev/sda4
  append="video=vesafb:mtrr,ywrap,1024x768-32@85"

Si vous utilisez un noyau de version 2.6.7 ou postérieure et avez placé un cavalier (shunt électrique) sur votre disque dur car le BIOS ne gère pas les disques de grande capacité, alors vous devez ajouter append="sdx=stroke" en remplaçant sdx par le repère de disque approprié..

Les utilisateurs de genkernel doivent savoir que leur noyau utilise les mêmes options de démarrage que le CD d'installation. Par exemple, si vous avez des périphériques SCSI, vous devez passer l'option doscsi.

Enregistrez le fichier et quittez votre éditeur. Pour terminer, vous devez lancer la commande /sbin/lilo pour que LILO prenne votre fichier /etc/lilo.conf en compte (c'est-à-dire pour l'installer sur le disque). Notez que vous devrez exécuter /sbin/lilo chaque fois que vous installez un noyau ou faites des changement dans le menu.

Exemple de code 1.1 : terminer l'installation de LILO

# /sbin/lilo

Veuillez consulter la page Wikipedia de LILO pour répondre à vos éventuelles questions à son propos.

Poursuivez avec Redémarrage du système.

1.  Alternative: Utiliser GRUB Patrimonial (Legacy)

Qu'est-ce que GRUB Patrimonial?

GRUB a été retravaillé et une nouvelle version appelée GRUB2 est désormais disponible. Le code de GRUB2 est très différent de celui de GRUB, c'est pourquoi la version précédente de GRUB est maintenant appelée "GRUB Patrimonial" (« GRUB Legacy » en angais).

Comprendre le vocabulaire de GRUB

Pour bien comprendre GRUB, le plus important est de se familiariser avec la manière qu'a GRUB de désigner les disques durs et les partitions. Votre partition Linux /dev/sda2 s'appelle généralement (hd0,1) dans GRUB. Notez les parenthèses nécessaires autour de hd0,1.

GRUB compte les disques durs à partir de zéro plutôt que de « a » et les partitions à partir de zéro au lieu de un. Notez aussi que GRUB ne compte que les disques durs et ignore les périphériques tels que les lecteurs ou graveurs de CD-ROM. Les mêmes principes s'appliquent aux disques SCSI. Ces derniers reçoivent en général des numéros supérieurs à ceux des disques IDE, sauf quand le BIOS est configuré pour démarrer sur les disques SCSI. Si votre machine démarre sur un autre disque (par exemple votre premier disque esclave), c'est le disque sur lequel votre ordinateur démarre qui est considéré comme hd0.

En supposant que vous ayez un disque dur /dev/sda et deux autres sur /dev/sdb et /dev/sdc, alors /dev/sdb7 s'écrit (hd1,6) dans GRUB. Cela peut sembler compliqué, et ça l'est, mais, comme vous le verrez, GRUB offre un système d'aide à la saisie bien pratique si vous avez de nombreux disques durs avec beaucoup de partitions.

Après cette courte introduction, il est temps d'installer GRUB.

Installation de GRUB

Pour installer GRUB Patrimonial, il suffit d'une simple commande emerge.

Exemple de code 1.1 : installer GRUB

# emerge sys-boot/grub:0

Bien que GRUB soit maintenant installé, vous devez encore écrire son fichier de configuration pour qu'il puisse démarrer votre noyau et l'installer dans le secteur de démarrage (MBR) du système. Créez le fichier /boot/grub/grub.conf :

Exemple de code 1.1 : création de /boot/grub/grub.conf

# nano -w /boot/grub/grub.conf

Nous allons maintenant écrire un fichier grub.conf. Assurez-vous d'utiliser votre propre nom d'image du noyau et, si approprié, votre propre nom de fichier initrd.

Note : Grub attribue les noms des disques depuis le BIOS. Si vous changez vos paramètres du BIOS, les lettres et les numéros qui désignent vos disques peuvent changer également. Cela signifie que si vous changez l'ordre de démarrage de vos disques, vous aurez peut-être à changer la configuration de grub.

Note : Si vous avez utilisé le système de fichiers JFS, vous devez ajouter « ro » à la ligne kernel pour que JFS puisse récupérer son journal avant que le système de fichiers ne soit monté en lecture/écriture.

Note : Si vous utilisez un dual-boot avec Windows, l'exemple de partitionnement présenté dans ce manuel ne suffira pas (notre exemple utilise les quatre partitions primaires pour Linux, alors qu'une au moins devrait être une partition étendue si Windows doit être installé sur une partition logique). Soyez vigilant et considérez que ce listing n'est qu'un exemple à adapter à vos besoins.

Exemple de code 1.1 : exemple de grub.conf

# Entrée par défaut, 0 est la première, 1 la deuxième, etc.
default 0
# Délai en secondes avant de lancer l'entrée par défaut
timeout 30
# Jolie image « splash »
# Mettez la ligne suivante en commentaire
# si votre machine n'a pas de carte graphique.
splashimage=(hd0,1)/boot/grub/splash.xpm.gz

title Gentoo Linux ${kernel-version}
# Partition qui contient l'image du noyau ( ou le système d'exploitation)
root (hd0,1)
kernel /boot/kernel-${kernel-version} root=/dev/sda4

title Gentoo Linux ${kernel-version} (rescue)
# Partition qui contient l'image du noyau
root (hd0,1)
kernel /boot/kernel-${kernel-version} root=/dev/sda4 init=/bin/bb

# Les lignes suivantes n'existent que si vous démarrez un système Windows en multi-boot.
# Dans cet exemple, Windows est installé dans /dev/sda6.
title Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1

Si lors de la compilation du noyau, vous avez choisi d'inclure un système de fichiers virtuel de démarrage (initramfs) sur lequel démarrer, vous devez changer la configuration pour faire référence à ce système de fichiers virtuel et pour lui indiquer, où se trouve le disque physique root :

Exemple de code 1.1 : extrait de GRUB pour une compilation incluant un système de fichiers virtuel de démarrage (initramfs)

title Gentoo Linux ${kernel-version}
root (hd0,1)
kernel /boot/${kernel-version} real_root=/dev/sda4
initrd /boot/${genkernel-initrd}

Si vos partitions sont organisées différemment ou si vous utilisez un autre noyau, ajustez les commandes en conséquence. Néanmoins, assure-vous que ce qui suit an périphérique GRUB (comme (hd0,1) est relatif au poind de montage, pas à la racine. En d'autres termes, (hd0,1)/grub/splash.xpm.gz est en fait /boot/grub/splash.xpm.gz, car (hd0,1) sera monté sur /boot.

De plus, si vous avez décidé de partitionner votre disque sans partition /boot séparée, le préfixe /boot est indispensable. Par contre, Si vous avez créé une partition /boot séparée, le préfixe /boot est facultatif et fonctionne grâce à un lien symbolique. En résumé, les exemples ci-dessus devraient fonctionner avec ou sans partition /boot séparée.

Si vous devez passer des options supplémentaires à votre noyau, ajoutez-les simplement à la fin de la commande kernel. Nous lui passons déjà une option (root=/dev/sda4 ou real_root=/dev/sda4), mais vous pouvez en ajouter (par exemple, les options video ou vga pour le tampon de trames tels que mentionnées plus haut).

Si le fichier de configuration de votre chargeur de démarrage contient le paramètre real_root (racine réelle), utilisez le paramètre real_rootflags pour définir les options de montage de système de fichiers root.

Si vous utilisez un noyau de version 2.6.7 ou supérieure et avez placé un cavalier (shunt électrique) sur votre disque dur car le BIOS ne gère pas les disques de grande capacité, alors vous devez ajouter sdx=stroke sur la ligne kernel (en remplaçant sdx par le répère du disque concerné).

Les utilisateurs de genkernel doivent savoir que leur noyau utilise les mêmes options que celles utilisées sur le CD d'installation. Par exemple, si vous avez des périphériques SCSI, vous devez ajouter l'option doscsi.

Enregistrez le fichier grub.conf et quittez votre éditeur. Il faut encore installer GRUB dans votre secteur de démarrage, de manière à ce qu'il soit exécuté automatiquement au démarrage.

Les développeurs de GRUB conseillent d'utiliser la commande grub-install. Cependant, si cette méthode échoue, vous devrez l'installer manuellement.

Veuillez poursuivre avec soit l'installation automatique de GRUB (par défaut), soit l'installation manuelle de GRUB (alternative).

Par défaut : installation automatique de GRUB

Le script grub-install installe GRUB automatiquement, mais, puisque vous êtes dans un environnement « chroot », vous devez créer le fichier /etc/mtab à jour. Ce dernier contient la liste des systèmes de fichiers qui sont montés. Heureusement, il suffit d'utiliser une copie de /proc/mounts en évitant la ligne rootfs (nécessaire si vous n'avez pas de partition /boot séparée). La commande suivante fonctionne avec ou sans partition /boot séparée :

Exemple de code 1.1 : créer /etc/mtab

# grep -v rootfs /proc/mounts > /etc/mtab

Si vous utilisez des disques Linux virtio , vous devez dire à Grub où trouver les disques sinon la commande grub-install échouera. Ceci se fait en ajoutant la définition du périphérique au fichier device.map :

Exemple de code 1.1 : ajouter le disque virtio à la carte des périphériques

# echo "(hd0)	/dev/vda" >> /boot/grub/device.map

Ensuite, vous pouvez lancer le script grub-install :

Exemple de code 1.1 : exécuter grub-install

# grub-install --no-floppy /dev/sda

Pour plus d'informations à propos de GRUB, vous pouvez consulter the FAQ le GRUB, le wiki de GRUB , ou lire info grub dans votre terminal.

Poursuivez avec le redémarrage du système.

Alternative : installation manuelle de GRUB

Pour configurer GRUB, tapez grub. Vous recevrez l'invite GRUB grub> sur la ligne de commande. Vous devez ensuite entrer les bonnes commandes pour installer le secteur de démarrage sur votre disque dur.

Exemple de code 1.1 : lancer le shell GRUB

# grub --no-floppy

Note : si votre système n'a pas de lecteur de disquettes, ajoutez l'option --no-floppy à la commande ci-dessus pour empêcher grub de tenter d'accéder au lecteur inexistant.

Dans notre exemple, nous voulons installer GRUB pour qu'il trouve l'information dont il a besoin sur la partition de démarrage ${/boot}. Nous voulons aussi installer GRUB dans le secteur MBR (N.D.T. : « Master Boot Record », code initialement chargé par le BIOS au démarrage du PC) pour que GRUB soit lancé dès le démarrage de la machine. Évidemment, si vous ne suivez pas exactement notre exemple, vous devez modifier les commandes en conséquence.

Le shell de GRUB contient un mécanisme d'aide à la saisie. Par exemple, si vous tapez « root ( » suivi de la touche <TAB>, GRUB affichera une liste des périphériques possibles (hd0 par exemple). Si vous tapez « root (hd0, » suivi de la touche <TAB>, GRUB affichera une liste des partitions disponibles (hd0,0 par exemple).

Grâce à ce système, installer GRUB devient relativement facile. Allons-y, installons GRUB.

Exemple de code 1.1 : installer GRUB sur le MBR

grub> root (hd0,1)    (Indique où se trouve la partition /boot.)
grub> setup (hd0)     (Écrit GRUB dans le MBR.)
grub> quit            (Quitte le shell GRUB.)

Note : si vous voulez installer GRUB dans une partition au lieu du MBR, vous devez indiquer la bonne partition à la commande setup. Par exemple, pour installer GRUB dans /dev/sda4, la commande devient setup (hd0,3). Peu d'utilisateurs voudront faire cela.

Pour plus d'informations à propos de GRUB, vous pouvez consulter la FAQ de GRUB le wiki de GRUB , ou lire info grub dans votre terminal.

Poursuivez avec le redémarrage du système.

1.  Redémarrage du système

Sortez de l'environnement « chroot » et démontez toutes les partitions montées. Ensuite, tapez la commande magique tant attendue : reboot.

Exemple de code 1.1 : sortie du « chroot », démontage des partitions et redémarrage

# exit
cdimage ~# cd
cdimage ~# umount -l /mnt/gentoo/dev{/shm,/pts,}
cdimage ~# umount /mnt/gentoo{/boot,/sys,/proc,}
cdimage ~# reboot

Bien entendu, n'oubliez pas de retirer le CD du lecteur car sinon le système amorcera le CD au lieu de démarrer sur votre nouveau système Gentoo.

Une fois le système Gentoo démarré, concluez avec (Finaliser votre installation).

Dernière mise à jour le 17 août 2014

Résumé : Plusieurs chargeurs sont disponibles. Chaque chargeur est configuré différemment. Ce chapitre explique les différents choix qui s'offrent à vous et décrit comment configurer le chargeur que vous aurez sélectionné.

Donate to support our development efforts.

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