Installation par debootstrap et chroot - 3 - Configuration matérielle
Dernière mise à jour : Debian 10.8
Ce document décrit la configuration matérielle d'un système construit par debootstrap
Installation du noyau, des firmwares et microcodes
Installation du chargeur de démarrage (grub)
Sommaire
Installation par debootstrap et chroot - 3 - Configuration matérielle
On suppose que le système chrooté est minimum, construit par debootstrap sans options supplémentaires. Si ce n'est pas le cas, certaines étapes de la configuration seront déjà effectuées et pourront être "sautées" après vérification.
On suppose également
$ lsblk -o name,fstype,label,mountpoint /dev/sdb1 NAME FSTYPE LABEL MOUNTPOINT sdb1 vfat ESP4 /mnt/boot/efi
d'un accès aux variables efi
$ ls /sys/firmware/efi/efivars/
Toutes les commandes sont passées depuis le système à configurer en chroot
2 - Installation des firmwares et du noyau
2.1 - Microcode et firmware
Installer les microcodes et firmwares en fonction de la plate-forme
$ sudo aptitude install intel-microcode firmware-linux-free firmware-misc-nonfree firmware-iwlwifi
Une liste des firmwares chargés par la machine hôte peut-être obtenue avec
$ sudo dmesg |grep firmware
2.2 - Noyau
Installer un noyau et ses en-têtes, ....
$ sudo aptitude install linux-image-amd64 linux-headers-amd64 dkms
3 - Amorçage
3.1 - Préparation
Installer le paquet grub correspondant à la plate-forme
$ sudo aptitude install grub-efi-amd64 grub-efi-amd64-signed
3.2 - Fichier de configuration de grub
$ sudo update-grub
3.3 - Installation de grub dans l'ESP
Installer grub dans la partition ESP (EFI system partition)
$ sudo grub-install --bootloader-id=DEBIAN
$ sudo tree /boot/efi /boot/efi └── EFI └── DEBIAN ├── BOOTX64.CSV ├── fbx64.efi ├── grub.cfg ├── grubx64.efi ├── mmx64.efi └── shimx64.efi
3.4 - Entrée d'amorçage
Vérifier que grub a correctement créé l'entrée d'amorçage dans la nvram de la plate-forme
Relever le numéro de partition partuuid (et non pas l'uuid dans le cas présent) de la partition ESP
$ lsblk -n -o partuuid /dev/sdb1 25818892-3ec6-4f07-9bf8-e41fa1a6a123
Vérifier que l'entrée correspondante (partition et fichier)
est présente dans les entrées d'amorçage
$ efibootmgr -v |grep $(lsblk -n -o partuuid /dev/sdb1)|grep '\\EFI\\DEBIAN\\shimx64.efi' Boot0005* DEBIAN HD(1,GPT,25818892-3ec6-4f07-9bf8-e41fa1a6a123,0x1000,0x1ff000)/File(\EFI\DEBIAN\shimx64.efi)
est la première dans l'ordre d'amorçage (BootOrder)
$ efibootmgr |grep 0005 BootOrder: 0005,0001,0004,0008,0007,0006,0002,0003,0000 Boot0005* DEBIAN
si une "Entrée Prochain boot" (BootNext) est programmée, la supprimer le cas échéant
$ sudo efibootmg -N
Si l'entrée n'apparaît pas ou ne convient pas
$ sudo efibootmg -b 2 -B
$ sudo efibootmgr --create --disk /dev/sdb1 --part 1 --label "debian_sandisk" --loader /EFI/debian/grubx64.efi .... BootOrder: 0006,0005,0004,0003,0007,0002,0001,0000 ..... Boot0006* debian_sandisk
3.5 - Cas d'un media amovible
Dans le cas d'un média amovible, afin qu'il puisse démarrer automatiquement, même en l'absence d'une entrée d'amorçage, utiliser le dispositif de secours (fallback) :
Créer un répertoire EFI/BOOT
$ sudo mkdir -p /boot/efi/EFI/BOOT
et y placer une copie des fichiers shimx64.efi (sous le nom de bootx64.efi) et fbx64.efi
$ sudo cp /boot/efi/EFI/DEBIAN/shimx64.efi /boot/efi/EFI/BOOT/bootx64.efi $ sudo cp /boot/efi/EFI/DEBIAN/fbx64.efi /boot/efi/EFI/BOOT/
Vérifier le contenu de l'ESP
$ sudo tree /boot/efi /boot/efi └── EFI ├── BOOT │ ├── bootx64.efi │ └── fbx64.efi └── DEBIAN ├── BOOTX64.CSV ├── fbx64.efi ├── grub.cfg ├── grubx64.efi ├── mmx64.efi └── shimx64.efi
Note : Lors du prochain démarrage, si l'amorçage s'effectue sur le media amovible
fbx64.efi créera une entrée d'amorçage directe pour /EFI/debian/shimx64
les amorçages futurs pourront s'effectuer sur cette entrée
3.6 - Animation de démarrage Plymouth (option)
Installer plymouth et sélectionner l'animation
$ sudo aptitude install plymouth plymouth-themes $ sudo plymouth-set-default-theme -R futureprototype
Modifier le fichier de configuration de grub /etc/default/grub pour ajouter dans la ligne de lancement du noyau "quiet splash", puis le mettre à jour
$ cat /etc/default/grub .... GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" .... $ sudo update-grub
4 - Prochaine étape
Reste à prendre en compte les systèmes de fichiers via les fichiers fstab, crypttab, resume