30.2.2. Le chargeur de démarrage
This section looks at the default boot loader for the x86 platform, GRUB. Depending on the system's architecture, the boot process may differ slightly. Refer to Section 30.2.2.1, « Chargeurs de démarrage pour d'autres architectures » for a brief overview of non-x86 boot loaders. For more information about configuring and using GRUB, see Chapitre 9, Chargeur de démarrage GRUB.
Un chargeur de démarrage pour la plate-forme x86 fonctionne au minimum en deux étapes. La première est un petit binaire de code machine sur le MBR. Son seul rôle est de localiser le chargeur de démarrage pour l'Étape 2 et d'en charger la première partie en mémoire.
GRUB has the advantage of being able to read ext2 and ext3 [13] partitions and load its configuration file —
/boot/grub/grub.conf
— at boot time. Refer to Section 9.7, « Fichier de configuration du menu de GRUB » for information on how to edit this file.
Note
Si vous mettez à niveau le noyau en utilisant l'Agent de mise à jour Red Hat, le fichier de configuration du chargeur de démarrage sera mis à jour automatiquement. De plus amples informations sur Red Hat Network se trouvent en ligne à l'adresse suivante : https://rhn.redhat.com/.
Une fois que le chargeur de démarrage Étape 2 est en mémoire, il affiche l'écran graphique indiquant à l'utilisateur les différents systèmes d'exploitation ou noyaux qu'il doit charger en fonction de sa configuration. Sur cet écran, l'utilisateur peut, à l'aide des touches fléchées, choisir le système d'exploitation ou le noyau qu'il souhaite charger et valider ce choix en appuyant sur la touche Entrée. Si l'utilisateur n'appuie sur aucune touche avant qu'un certain laps de temps - configurable - ne se soit écoulé, le chargeur de démarrage chargera la sélection par défaut.
Once the second stage boot loader has determined which kernel to boot, it locates the corresponding kernel binary in the
/boot/
directory. The kernel binary is named using the following format — /boot/vmlinuz-<kernel-version>
file (where <kernel-version>
corresponds to the kernel version specified in the boot loader's settings).
For instructions on using the boot loader to supply command line arguments to the kernel, refer to Chapitre 9, Chargeur de démarrage GRUB. For information on changing the runlevel at the boot loader prompt, refer Section 9.8, « Changing Runlevels at Boot Time ».
Le chargeur de démarrage place alors une ou plusieurs images initramfs appropriées en mémoire. Ensuite, par l'intermédiaire de
cpio
, le noyau décompresse ces images présentes dans la mémoire et les met sur /sysroot/
, un système de fichiers virtuel basé sur la RAM. Les images initramfs
sont utilisées par le noyau pour charger les pilotes et les modules nécessaires au démarrage du système. Ce processus s'avère particulièrement important si votre système dispose de disques durs SCSI ou s'il utilise le système de fichiers ext3.
Une fois que le noyau et une ou plusieurs images
initramfs
sont chargées en mémoire, le chargeur de démarrage cède le contrôle du processus de démarrage au noyau.
For a more detailed overview of the GRUB boot loader, refer to Chapitre 9, Chargeur de démarrage GRUB.
30.2.2.1. Chargeurs de démarrage pour d'autres architectures
Once the kernel loads and hands off the boot process to the
init
command, the same sequence of events occurs on every architecture. So the main difference between each architecture's boot process is in the application used to find and load the kernel.
Par exemple, l'architecture Itanium utilise le chargeur de démarrage ELILO, l'architecture eServer pSeries d'IBM utilise yaboot et les systèmes System z IBM utilisent le chargeur de démarrage z/IPL.
[13]
GRUB reads ext3 file systems as ext2, disregarding the journal file. Refer to the chapter titled The ext3 File System in the Red Hat Enterprise Linux Deployment Guide for more information on the ext3 file system.