[Installation] systemd-boot et EFI sur 2 disques durs

Questions et astuces concernant l'installation et la configuration d'archlinux
sinseman44
newbie
Messages : 4
Inscription : mar. 08 nov. 2016, 19:59
Localisation : Toulouse

[Installation] systemd-boot et EFI sur 2 disques durs

Message par sinseman44 »

Bonsoir tout le monde,

Tout d'abord désolé si ma question fait déjà doublon avec un autre poste du forum, je l'ai parcouru qu'en diagonale.

J'ai installé une distri archlinux sur un système composé de 2 disques durs monté en RAID 0 avec Luks et LVM (jusque la, rien de bien sorcier).
Mes tables GPT de mes 2 hdds sont composées de 2 partitions:
1) "EFI Partition" de 512 Mo
2) "RAID Partition" de 1 To (moins les 512 Mo)

Ma partition sda1 (HDD1) typée "EFI Partition" et formatée en FAT32 est montée dans /boot/efi et j'utilise systemd-boot comme bootloader. (Jusque là, tout va bien).

J'ai fait une copie identique de ma partition sda1 dans sdb1 (typée "EFI Partition", formatée en FAT32 et montée dans /boot/efi_backup).
systemd-boot n'a que l'entrée présente dans la partition EFI de sda1. Comment ajouter l'entrée de la 2eme partition (sdb1) ? avec efibootmgr ?

Voici ma question, en cas de défaillance d'un de mes 2 disques durs, comment être sur que le bootloader va bien réussir a booter sur la partition active (disque dur actif) ?

PS1: J'ai fait différents tests sur Virtualbox sans succès.
PS2: J'ai déjà vu qu'il était possible de mettre les partitions EFI en RAID (sans avoir essayé) : https://bbs.archlinux.org/viewtopic.php ... 1#p1390741

Merci d'avance de votre aide et n’hésitez pas si vous souhaitez plus de précisions sur mon installation actuelle.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17624
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [Installation] systemd-boot et EFI sur 2 disques durs

Message par benjarobin »

Bonjour, Il suffit de rajouter l'entrée comme tu as ajouté la première entrée... Après avec efibootmgr tu peux indiquer laquelle tu veux en premier.
Par contre je ne comprend pas tout, normalement systemd-boot peux uniquement lancer un kernel qui est dans la partition ESP ? Il ne faut pas monter avec systemd-boot la partition ESP dans /boot ? Ce que tu fais me semble étrange... Avec Grub je sais que ce que tu veux faire est possible, mais avec systemd-boot je ne comprend même pas comment cela peut actuellement fonctionner (sans copier le kernel et son initramfs dans la partition ESP). Quelle est le contenu de ta partition ESP ?
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
sinseman44
newbie
Messages : 4
Inscription : mar. 08 nov. 2016, 19:59
Localisation : Toulouse

Re: [Installation] systemd-boot et EFI sur 2 disques durs

Message par sinseman44 »

benjarobin a écrit :Bonjour, Il suffit de rajouter l'entrée comme tu as ajouté la première entrée...
c'est à dire ?
benjarobin a écrit :Par contre je ne comprend pas tout, normalement systemd-boot peux uniquement lancer un kernel qui est dans la partition ESP ?
C'est le cas actuellement, mon kernel est dans le dossier /boot/efi/EFI/arch, j"ai :
- initramfs-linux-fallback.img
- initramfs-linux.img
- vmlinuz-linux.efi

j'ai modifié mon mkinitcpio.conf pour qu'il me copie mon initramfs dans ce dossier ainsi que le noyau.
benjarobin a écrit :Il ne faut pas monter avec systemd-boot la partition ESP dans /boot ?

je l'ai monté dans /boot/efi au lieu de /boot, tu peux passer le path à bootctl pour lui donner un autre chemin que celui par défaut.

Code : Tout sélectionner

# bootctl --path=/boot/efi install
benjarobin a écrit :Quelle est le contenu de ta partition ESP ?
voici mon arbre de /boot/efi:

Code : Tout sélectionner

|_ EFI
|      |_ BOOT
|      |     |_ BOOTX64.EFI
|      |_ arch
|      |     |_ initramfs-linux-fallback.img
|      |     |_ initramfs-linux.img
|      |     |_ vmlinuz-linux.efi
|      |_ systemd
|             |_ systemd-bootx64.efi
|_ loader
        |_ entries
        |     |_ arch-encrypted-lvm.conf
        |_ loader.conf
sachant que j'ai la même chose dans /boot/efi_backup.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17624
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [Installation] systemd-boot et EFI sur 2 disques durs

Message par benjarobin »

il suffit d'installer systemd-boot sur la deuxième partition, de la même façon que pour la première...
Sinon il suffit d'installer manuelle via efibootmgr l'entrée, voir wiki
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
sinseman44
newbie
Messages : 4
Inscription : mar. 08 nov. 2016, 19:59
Localisation : Toulouse

Re: [Installation] systemd-boot et EFI sur 2 disques durs

Message par sinseman44 »

benjarobin a écrit :il suffit d'installer systemd-boot sur la deuxième partition, de la même façon que pour la première...
Sinon il suffit d'installer manuelle via efibootmgr l'entrée, voir wiki
Ok, je viens de faire les manipulations suivantes pour tester.
Installation de systemd-boot sur sdb1 (2eme disque dur, partition EFI).

Code : Tout sélectionner

# bootctl --path=/boot/efi_backup install
J'ai ensuite copié les dossiers EFI/arch et loader/* de sda1 dans sdb1 et renommer le titre dans le fichier arch-encrypted-lvm.conf pour différencier les noms au boot.

J'ai corrompu ma grappe raid 0, disque sda2 (je ne pense pas que ce soit réellement nécessaire pour mon test) :

Code : Tout sélectionner

# mdadm /dev/md0 -f /dev/sda2
# mdadm /dev/md0 -r /dev/sda2
on peut ensuite vérifier que la grappe est dégradée avec la commande :

Code : Tout sélectionner

# mdadm --misc --detail /dev/md0
J'ai corrompu ma partition sda1 (EFI partition, HDD1) en renommant le dossier EFI en EFI_old puis redémarrer le système.

Conclusion : Au Boot, seul mon noyau nommé avec le titre présent dans le fichier de conf de la 2eme partition EFI (celui modifié) est présent et ça démarre bien.

Est-ce que mon test est pertinent pour vérifier que, quelque soit le disque corrompu, le système démarre bien ? Je pense que oui.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17624
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [Installation] systemd-boot et EFI sur 2 disques durs

Message par benjarobin »

Je pense que tu es bien couvert et que tu as bien testé, mais pour moi c'est un peu trop paranoïaque comme méthode, je préfère faire un backup, ce qui est plus sûr. Ici tu ne te protèges que d'une défaillance matériel et non d'une erreur humaine.
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
sinseman44
newbie
Messages : 4
Inscription : mar. 08 nov. 2016, 19:59
Localisation : Toulouse

Re: [Installation] systemd-boot et EFI sur 2 disques durs

Message par sinseman44 »

benjarobin a écrit :Jje préfère faire un backup, ce qui est plus sûr. Ici tu ne te protèges que d'une défaillance matériel et non d'une erreur humaine.
Je suis complètement d'accord avec toi et j'ai également prévu tout un mécanisme de backup sur un autre support physique.
merci de ton retour sur mes interrogations.
Répondre