Un chargeur de démarrage fait le lien entre la découverte par le micrologiciel et l'exécution du noyau. GRUB est courant sur les PC Linux, mais systemd-boot, U-Boot, le chargement par le micrologiciel d'un noyau doté d'un stub EFI et d'autres conceptions remplissent différentes parties de ce rôle.
Démarrer le Système · Leçon 3
Processus de Démarrage : Chargeur d'Amorçage
Découvrez comment un chargeur sélectionne les artefacts Linux, construit la ligne de commande du noyau et lui transfère le contrôle.
Sélectionner les artefacts de démarrage
Une entrée du chargeur peut désigner :
- une image de noyau Linux ;
- une image initramfs facultative ou l'ancien initrd ;
- une ligne de commande du noyau ;
- des métadonnées propres à la plateforme ou le chargeur d'un autre système d'exploitation.
GRUB peut présenter plusieurs noyaux et entrées de récupération. Un noyau de repli n'est utile que si les modules et l'initramfs correspondants restent disponibles et testés. Le chargeur lit les fichiers grâce aux modules de stockage et de système de fichiers qu'il prend en charge ; il ne dépend pas du VFS Linux, qui ne fonctionne pas encore.
À quoi un chargeur de démarrage Linux transfère-t-il normalement le contrôle ?
Paramètres de la ligne de commande du noyau
Le chargeur transmet une ligne de commande textuelle que le noyau et l'espace utilisateur précoce analysent. Parmi les exemples courants :
root=...pour identifier le système de fichiers racine voulu ou sa spécification dans l'espace utilisateur précoce ;roourwpour demander un mode initial de montage de la racine ;quietpour réduire les messages du noyau sur la console ;init=...pour demander un autre premier programme de l'espace utilisateur lors d'une récupération spécialisée ;- les paramètres
rd.*propres aux distributions et interprétés par les outils de l'initramfs.
initrd est normalement une directive du chargeur qui désigne une image, pas un paramètre générique du noyau. BOOT_IMAGE= peut apparaître dans une ligne de commande produite par certaines configurations GRUB, mais ce n'est pas le mécanisme qui charge le noyau.
Inspectez la ligne de commande utilisée pour le démarrage actuel avec :
$ cat /proc/cmdline
Quel est le rôle du paramètre root= de la ligne de commande du noyau ?
Que demande normalement le paramètre quiet ?
Modification temporaire et récupération
GRUB permet généralement à un utilisateur autorisé de la console de modifier une entrée pour un seul démarrage, souvent avec une touche d'édition indiquée dans le menu. Cette fonction permet de retirer quiet, choisir des paramètres de récupération ou corriger un mauvais identifiant de racine. L'interface et les autorisations varient, notamment avec Secure Boot et les configurations GRUB protégées par mot de passe.
La ligne de commande peut exposer du texte sensible dans /proc/cmdline, les journaux de démarrage et les rapports de plantage. Ses paramètres peuvent aussi affaiblir la sécurité ou empêcher le démarrage. N'y placez jamais de secret et conservez une entrée fonctionnelle ainsi qu'une procédure de récupération par la console.
Quelle propriété caractérise généralement la modification interactive d'une entrée GRUB pour un démarrage ?
Configuration GRUB persistante
Les distributions génèrent généralement la configuration GRUB finale à partir de modèles, de valeurs par défaut, de scripts et des noyaux détectés. Ne modifiez pas directement le fichier grub.cfg généré, sauf si la distribution documente explicitement cette méthode ; une régénération peut écraser vos changements.
Apportez une modification ciblée à la source, exécutez la commande de régénération documentée par la distribution, inspectez son résultat et testez en conservant une ancienne entrée fonctionnelle ainsi qu'un support de récupération amorçable. La commande et le chemin de sortie diffèrent entre Debian, Fedora et les installations UEFI ou BIOS.
Pourquoi la modification directe d'un fichier grub.cfg généré est-elle généralement peu fiable ?
N'utilisez le laboratoire Personnaliser le menu de démarrage GRUB2 que dans son environnement permettant la récupération.
Leçon terminée
Vous avez terminé Processus de Démarrage : Chargeur d'Amorçage
Vous savez maintenant distinguer les directives du chargeur des paramètres de la ligne de commande du noyau.
Identifier le noyau, l'initramfs, la ligne de commande et les entrées alternatives.
Utiliser
root=,roetquietselon leur rôle réel.Inspecter les paramètres du démarrage actuel dans
/proc/cmdline.Considérer les modifications interactives comme temporaires et sensibles pour la sécurité.
Modifier une configuration générée persistante par le flux de travail de la distribution.
Conservez votre progression
Créez un compte gratuit pour enregistrer cette leçon et continuer sur n'importe quel appareil.
Créer un compte gratuit