Aller au contenu

Chargeur d'amorçage

Chargeur d'amorçage (en anglais boot loader) : programme lancé par le firmware qui charge en mémoire le noyau et son initramfs, leur transmet une ligne de commande, puis leur passe la main.

Sur Ubuntu, Debian et Red Hat, c'est GRUB 2. On n'édite jamais /boot/grub/grub.cfg, qui est généré : on dépose un fichier dans /etc/default/grub.d/ (lu après /etc/default/grub, dont il remplace les valeurs), puis sudo update-grub. Les paquets de noyau appellent eux-mêmes update-grub, ce qui fait apparaître chaque nouveau noyau dans le sous-menu « Advanced options », d'où l'on démarre l'ancien quand le nouveau échoue. En UEFI, la chaîne commence par shimx64.efi puis grubx64.efi, rangés dans la partition système EFI. On vérifie ce que le noyau a réellement reçu dans /proc/cmdline.

Qui peut éditer une entrée du menu (touche e) peut ajouter init=/bin/bash et obtenir un shell root : le guide BP-028 de l'ANSSI recommande un mot de passe GRUB (R5), avec un piège, car sans l'option --unrestricted sur les entrées normales, même un redémarrage ordinaire attend le mot de passe. Sur une instance cloud, le menu n'est visible depuis la console série que si GRUB_TERMINAL inclut serial. Une invite grub rescue> signale que GRUB ne trouve plus ses fichiers : on le réinstalle depuis le mode de secours.

Dans les cours

Voir aussi