systemd-boot (Français)

From ArchWiki

systemd-boot(7), précédemment appelé gummiboot (Allemand pour "bateau pneumatique"), est un chargeur d'amorçage de type UEFI facile à configurer. Il offre un menu textuel pour selectionner l'entrée d'amorçage et un editeur pour le terminal du noyau.

Il faut noter que systemd-boot ne peut seulement lancer des éxécutables EFI (ex: le noyau Linux EFISTUB, shell UEFI, GRUB, ou le Gestionnaire de démarrage Windows).

Systèmes de fichier supportés

systemd-boot hérite du support des systèmes de fichier du système de fichier du micrologiciel (ex: FAT12, FAT16 et FAT32). Additionnellement, il peut lancer des pilotes UEFI placés dans esp/EFI/systemd/drivers.

Installation

systemd-boot est fournit avec le paquet systemd qui est une dépendance du paquet méta base, donc aucun autre paquet additionnel ne doit être installé manuellement.

Installation du chargeur d'amorçage UEFI

Pour installer systemd-boot, veuillez premièrement vous assurer que le système a été démarré dans le mode UEFI et que les variables UEFI sont accessibles. Ceci peut être vérifié en éxécutant efivar --list ou, si efivar n'est pas installé, en éxécutant ls /sys/firmware/efi/efivars (si le répertoire existe, le système a été démarré en mode UEFI.)

Durant l'installation, esp sera utilisé comme terme pour le point de montage, ex: /efi ou /boot. Assumant que vous vous êtes «chrooté» dans le point de montage du système.

Utilisez bootctl(1) pour installer systemd-boot à l'ESP:

# bootctl install

Ceci va copier le chargeur d'amorçe UEFI systemd-boot vers l'ESP, créez une entrée d'amorçage UEFI pour celui-ci et définissez le comme premier dans l'ordre de démarrage UEFI.


  • Sur un UEFI x64, /usr/lib/systemd/boot/efi/systemd-bootx64.efi sera copié vers esp/EFI/systemd/systemd-bootx64.efi et esp/EFI/BOOT/BOOTX64.EFI.
  • Sur un UEFI IA32, /usr/lib/systemd/boot/efi/systemd-bootia32.efi sera copié vers esp/EFI/systemd/systemd-bootia32.efi et esp/EFI/BOOT/BOOTIA32.EFI.

L'entrée d'amorçage sera appelée "Linux Boot Manager" et pointera vers, dépendant de l'architecture, soit \EFI\systemd\systemd-bootx64.efi ou \EFI\systemd\systemd-bootia32.efi sur l'ESP.

Note:
  • En éxécutant bootctl install, systemd-boot essaiera de localiser l'ESP à /efi, /boot, et /boot/efi. Pour définir l'esp vers un endroit différent, il est requis de rajouter l'option --esp-path=esp. (Voir bootctl(1) § OPTIONS pour des détails.)
  • Installer systemd-boot écrira par dessus n'importe quel esp/EFI/BOOT/BOOTX64.EFI (ou esp/EFI/BOOT/BOOTIA32.EFI pour l'UEFI IA32) existant, ex. la version Microsoft du fichier.

Pour conclure l'installation, configurez systemd-boot.

Installation depuis XBOOTLDR

This article or section is a candidate for moving to Partitioning#Discrete partitions.

Notes: Toutes les informations de partitionnement devraient être déplacées vers partitionning, pour ne laisser que les étapes utiles afin d'installer systemd-boot si vous avez une telle configuration. (Discuss in Talk:Systemd-boot (Français))

Une partition /boot séparée de type "Linux extended boot" (XBOOTLDR) peut être créée pour garder le noyeau et l'initramfs séparé de l'ESP. Ceci est particulièrement utile pour dual boot avec Windows avec un ESP qui est trop petit.

Préparez un ESP comme habituellement et créez une autre partition pour XBOOTLDR sur le même disque physique. La partition XBOOTLDR doit avoir le type de partition GUID de bc13c2ff-59e6-4262-a352-b275fd6f7172 [1] (type pour gdisk). La taille de la partition XBOOTLDR doit être assea large pour contenir tous les noyaux que vous allez installer.

Note:
  • systemd-boot ne fait pas de vérification du système de fichier comme il le fait pour l'ESP. Donc, il est possible d'utiliser n'importe quel système de fichier que votre implémentation UEFI peut lire.
  • UEFI peut passer le chargement de partitions autres que l'ESP quand le mode "fast boot" est activé. Cela peut engendrer le fait que systemd-boot n'arrive pas à trouver une entrée sur la partition XBOOTLDR; dans ce cas, désactivez le mode "fast boot".
  • La partition XBOOTLDR doit être sur le même disque physique que l'ESP pour que systemd-boot la reconnaisse.

Pendant l'installation, montez l'ESP vers /mnt/efi, et la partition XBOOTLDR vers /mnt/boot.

Une fois dans chroot, utilisez la commande:

# bootctl --esp-path=/efi --boot-path=/boot install

Pour conclure l'installation, configurez systemd-boot.

Mettre à jour le gestionnaire d'amorçe UEFI

Lorsqu'il y a une nouvelle version de systemd-boot, le gestionnaire d'amorçe UEFI peut optionellement être réinstallé par l'utilisateur. Ceci peut être fait manuellement ou automatiquement; les deux approches sont décrites ci-dessous.

Note: Le gestionnaire d'amorçe UEFI est un éxécutable EFI singulier et n'importe quelle version peut être utilisé pour amorçer le systeme (les mises-à-jour partielles ne s'appliquent pas, puisque pacman n'installe uniquement que l'installeur de systemd-boot, et non pas systemd-boot lui-même.) Cependant, de nouvelles versions peuvent ajouter des fonctionalités ou régler des bugs, il est donc une bonne idée de mettre à jour systemd-boot.
Warning: Si vous avez Secure Boot d'activé, vous devrez signer la mise à jour du chargeur d'amorçe. Voir #Signature pour Secure Boot.

Mise-à-jour manuelle

Utilisez bootctl pour mettre à jour systemd-boot:

# bootctl update
Note: Avec bootctl install, systemd-boot essaiera de localiser l'ESP à /efi, /boot, et /boot/efi. Pour définir l'esp vers un endroit différent, il est requis de rajouter l'option --esp-path=esp.

Mise-à-jour automatique

Pour mettre à jour systemd-boot automatiquement, utilisez soit un service systemd ou un hook pacman. Les deux méthodes sont décrites ci-dessous.

service systemd

Depuis la version 250, systemd est livré avec systemd-boot-update.service. Activer ce service mettra à jour le chargeur d'amorçe après le prochain démarrage.

hook pacman

Le paquet systemd-boot-pacman-hookAUR rajoute un hook pacman qui sera éxécuté à chaque fois que [2] est mit à jour.

Au lieu d'installer systemd-boot-pacman-hook, vous pourriez préférer placer le fichier suivant dans /etc/pacman.d/hooks/:

/etc/pacman.d/hooks/95-systemd-boot.hook
[Trigger]
Type = Package
Operation = Upgrade
Target = systemd

[Action]
Description = Met gracieusement à jour systemd-boot...
When = PostTransaction
Exec = /usr/bin/systemctl restart systemd-boot-update.service

Signature pour Secure Boot

Si vous avez Secure Boot d'activé, vous pouvez avoir envie d'ajouter un hook pacman pour signer automatique le gestionnaire d'amorçe après chaque mise-à-jour du paquet:

/etc/pacman.d/hooks/80-secureboot.hook
[Trigger]
Operation = Install
Operation = Upgrade
Type = Path
Target = usr/lib/systemd/boot/efi/systemd-boot*.efi

[Action]
Description = Signing systemd-boot EFI binary for Secure Boot
When = PostTransaction
Exec = /bin/sh -c 'while read -r i; do sbsign --key /path/to/keyfile.key --cert /path/to/certificate.crt "$i"; done;'
Depends = sh
Depends = sbsigntools
NeedsTargets

Remplacez /chemin/vers/fichier-clé.key et /chemin/vers/certificat.crt avec votre clé et certificat de signature respectivement. Pour une meilleure compréhension de ce hook, consultez la page du manuel.

Le /usr/lib/systemd/boot/efi/systemd-boot*.efi.signed créé sera automatiquement détecté par bootctl install ou bootctl update. Voir bootctl(1) § SIGNED .EFI FILES.

En tant qu'alternative, utilisez sbctl.

Configuration

Tip: Après avoir changé la configuration, éxécutez bootctl (sans arguments) pour s'assurer que systemd-boot sera capable de la lire correctement.

Configuration du chargeur

La configuration du chargeur est stockée dans le fichier esp/loader/loader.conf. Voir loader.conf(5) § OPTIONS pour des détails.

Un example de configuration du chargeur est fournie ci-dessous:

esp/loader/loader.conf
default  arch.conf
timeout  4
console-mode max
editor   no
Tip:
  • systemd-boot n'accepte pas les tabulations (tabs) comme indentation, utilisez des espaces à la place.
  • default et timeout peuvent être changés dans le menu d'amorçage lui-même, et les modifications seront stockées comme variables UEFI LoaderEntryDefault et LoaderConfigTimeout, remplaçant ces options.
  • bootctl set default "" et bootctl set-timeout "" peuvent être utilisés pour nettoyer les variables UEFI, remplaçant les options default et timeout, respectivement.
  • Si vous avez mis timeout 0, le menu d'amorçage peut être accédé en appuyant sur Espace.
  • Un fichier de configuration basique du chargeur d'amorçe est située dans /usr/share/systemd/bootctl/loader.conf.
  • Si le chargeur d'amorçe (pendant la selection de l'entrée) apparait déformé/utilise la mauvaise résolution, vous pouvez essayer de mettre le console-mode à auto]] (utilise des heuritiques pour selection la meilleure résolution), keep (garde la résolution fournie du firmware) ou 2 (essaie de selectionner la première résolution non-standard UEFI)

Se souvenir de la dernière entrée

Depuis la version 251 ou plus tard de systemd, default peut être modifiée en @saved afin de se souvenir de la dernière entée choisie au démarrage. Ceci est utile lorsque nous dual bootons Windows et la mise à jour automatique surprise de Windows vous fera démarrer Linux.

esp/loader/loader.conf
default @saved
...
Consulter {man

pour plus de détails.

Ajouter un chargeur

systemd-boot cherchera automatiquement pour un objet du menu d'amorçage dans esp/loader/entries/*.conf et additionnellement dans boot/loader/entries/*.conf, si vous utilisez #Installation depuis XBOOTLDR. Notez que les entrées dans esp peuvent seulement utiliser des fichiers (ex. noyaux, initramfs, images, etc.) dans esp. Similairement, les entrées dans boot ne peuvent utiliser que des fichiers dans boot.

Note: Quand Secure Boot est activé, les unified kernel images (UKIs) avec un .cmdline intégré ignorent toutes les options/arguments de la ligne de commande passés à eux (soit en utilisant une entrée d'amorçage avec options ou interactivement). Quand Secure Boot n'est pas activé, les options passées par la ligne de commande sont prioritaires face au .cmdline intégré.

Un example de fichier d'amorçage démarrant Arch depuis un volume en utilisant son UUID xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx est:

esp/loader/entries/arch.conf
title   Arch Linux
linux   /vmlinuz-linux
initrd  /initramfs-linux.img
options root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx rw
esp/loader/entries/arch-fallback.conf
title   Arch Linux (fallback initramfs)
linux   /vmlinuz-linux
initrd  /initramfs-linux-fallback.img
options root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx rw

Voir les Spécifications du Chargeur d'Amorçage pour des détails sur toutes les options de configuration.

systemd-boot regardera à chaque amorçage oour Windows Boot Manager à la position /efi/Microsoft/Boot/Bootmgfw.efi, Apple macOS Boot Manager dans le firmware, le shell UEFI /shellx64.efi et le Chargeur par defaut EFI (EFI Default Loader) /efi/boot/bootx64.efi, ainsi que les fichiers noyau préparés specifiquement dans /efi/Linux. Quand détectées, des entrées correspondantes nommées, respectivement, auto-windows, auto-osx, auto-efi-shell et auto-efi-default seront créées. Ces entrées ne requièrent pas de configuration manuelle du chargeur. En revanche, il ne detectera pas automatiquement d'autres applications EFI (contrairement à rEFInd), donc pour démarrer le noyau Linux, des configurations manuelles d'entrées devront être créées.

Tip:
  • Les entrées d'amorçage disponibles qui ont été configurées peuvent être listées avec la commande bootctl list.
  • Un exemple de fichier d'entrée est disponible à /usr/share/systemd/bootctl/arch.conf.
  • Les paramètres du noyeau pour des scénarios tels que LVM, LUKS, dm-crypt (Français) ou Btrfs peuvent être trouvés sur les pages pertinentes.
Note: Si des images de microcode initramfs externes sont utilisées (ex. en utilisant Booster en tant que générateur de initramfs), /boot/amd-ucode.img ou /boon/intel-ucode.img doivent être spécifiés dans un initrd séparé et doit toujours être placé en 'premier, avant l'image initramfs principale.

Shells UEFI ou autres applications EFI

Dans le cas où vous avez installé un Shell UEFI avec le paquet edk2-shell, systemd-boot détectera automatiquement une nouvelle entrée si le fichier EFI est placé dans esp/shellx64.efi. Pour faire cela, un exemple d'une commande après avoir installé le paquet serait:

# cp /usr/share/edk2-shell/x64/Shell.efi /boot/shellx64.efi

Autrement, dans le cas où vous avez installé d'autres applications EFI dans l'ESP, vous pouvez utilisez les extraits de configuration suivants:

Note: Le chemin du paramètre pour la ligne efi est relative à la racine de votre partition EFI (ESP). Si votre EFI system partition (ESP) est montée à /boot et que vos binaires resident à /boot/EFI/xx.efi et /boot/yy.efi, alors vous devriez spécifier les paramètres en tant que efi /EFI/xx.efi et efi /yy.efi respectivement.
esp/loader/entries/fwupd.conf
title  Firmware updater
efi     /EFI/tools/fwupdx64.efi
esp/loader/entries/gdisk.conf
title  GPT fdisk (gdisk)
efi     /EFI/tools/gdisk_x64.efi
Memtest86+

Vous avez besoins d'installer memtest86+-efi pour que cela marche. Vous devez également signer le binaire EFI lorsque vous utilisez Secure Boot.

esp/loader/entries/memtest.conf
title Memtest86+
efi /memtest86+/memtest.efi
Netboot

systemd-boot peut charger en chaîne Netboot. Téléchargez le binaire EFI ipxe-arch.efi et sa signature, vérifiez-le et placez-le comme proposé dans esp/EFI/arch_netboot/arch_netboot.efi.

esp/loader/entries/arch_netboot.conf
title Arch Linux Netboot
efi /EFI/arch_netboot/arch_netboot.efi
GRUB

systemd-boot peut charger en chaîne GRUB. La position du binaire grubx64.efi est égale au --bootloader-id= quand GRUB a été installé à l'ESP.

esp/loader/entries/grub.conf
title GRUB
efi /EFI/GRUB/grubx64.efi

Amorçer d'un autre disque

systemd-boot ne peut pas lancer de binaires EFI depuis une partition autre que l'ESP d'où il a été lancé ou la partition XBOOTLDR sur le même disque, mais il peut diriger le Shell UEFI à le faire.

Premièrement, installez edk2-shell comme décrit ci-dessus. Dans le Shell UEFI, utilisez la commande map pour prendre note du 'Alias FS (ex. HDa6666a2, HD0b, FS1, ou BLK7) de la partition avec la PARTUUID correspondante.

Puis, utilisez la commande exit pour re-amorçer dans Linux, où vous pouvez créer une nouvelle entrée pour éxécuter le programe EFI cible à travers le Shell UEFI:

esp/loader/entries/windows.conf
title   Windows
efi     /shellx64.efi
options -nointerrupt -nomap -noversion HD0b:EFI\Microsoft\Boot\Bootmgfw.efi

Assurez-vous que le chemin efi correspond à l'endroit où le shellx64.efi a été copié dans la partition esp. Notez également que le fichier EFI shellx64.efi peut être déplacé quelque part d'autre pour éviter la création automatique d'entrée par systemd-boot.

Remplacez HD0b avec l'alias FS noté précedemment.

  • L'option -nointerrupt empêche l'interruption du programme EFI cible avec Ctrl+C.
  • L'option -nomap -noversion cache le message de bienvenue par defaut du Shell UEFI.
  • Pour que le Shell UEFI retourne automatiquement au chargeur d'amorçe si le programme cible EFI s'arrête (ex. à cause d'une erreur), ajoutez l'option -exit.
  • Vous pouvez également ajouter l'option -noconsoleout si il reste des sorties inutiles (de texte) dans le Shell UEFI.

Amorçer dans le setup du micrologiciel UEFI

systemd-boot créera automatiquement une entrée afin d'amorçer dans le setup du firmware UEFI (souvent appelé BIOS) si le firmware de votre appareil permet de redémarrer dans le BIOS depuis le Système d'Exploitation.

Supporter l'hibernation

Voir Suspend and hibernate.

Editeur de paramètres du Noyau avec une protection par mot de passe

Alternativement, vous pouvez installer systemd-boot-passwordAUR ce qui supporte des options basique de configuration de mot de passe. Utilisez sbpctl generate pour générer une valeur pour cette option.

Installez systemd-boot-password avec la commande suivante:

# sbpctl install esp

Avec un editeur activé vous serez demandé votre mot de passe avant que vous puissez modifier les paramètres du noyau.

Trucs et astuces

Clés dans le menu d'amorçage

Vous pouvez utiliser t et T lorsque vous êtes dans le menu afin d'ajuster le timeout et e pour modifier les paramètres du noyau pour ce démarrage. Appuyez sur h pour voir une courte liste de raccourcis clavier utiles. Voir systemd-boot(7) § KEY BINDINGS pour une liste complète de raccourcis claviers lorsque vous êtes dans le menu d'amorçage.

Choix du prochain amorçage

Le gestionnaire d'amorçage est intégré avec la commande systemctl, vous permettant de choisir quelle option vous voulez amorçer après un redémarrage. Par exemple, supposons que vous avez construit un noyau customisé et créé un fichier d'entrée dans esp/loader/entries/arch-custom.conf pour amorçer dans celui-ci, vous pouvez juste lancer:

$ systemctl reboot --boot-loader-entry=arch-custom.conf

et votre système redémarrera dans cette entrée, gardant l'option par défaut intacte pour les amorçages qui suivront. Pour voir une liste d'entrées, utilisez l'option --boot-loader-entry=help.

Si vous voulez amorçer dirèctement dans le firmware de votre carte mère directement, alors, vous pouvez utiliser cette commmande:

$ systemctl reboot --firmware-setup

Images Noyau Unifiées

Les Images Noyau Unifiées (INUs) dans esp/EFI/Linux/ sont automatiquement ressourcées par systemd-boot, et ne nécéssitent pas une nouvelle entrée dans esp/loader/entries. (Notez que les images noyau unifiées doivent avoir une extension .efi afin d'être identifiées par systemd-boot).

Tip: Les fichiers dans esp/loader/enties seront amorçées en premier si aucun default n'est déclaré dans esp/loader/loader.conf. Supprimez ces entrées, ou définissez celle par defaut avec le nom complet du fichier, ex. default arch-linux.efi

Grml sur l'ESP

Note: Les instructions qui suivent ne sont pas exclusives à Grml. Avec de simples ajustements, installer d'autres logiciels (ex. SystemRescueCD) est possible.
Tip: Un PKGBUILD est disponible: grml-systemd-bootAUR.

Grml est un live system léger avec une collection de logiciels pour l'administration et le sauvetage système.

Afin d'installer Grml sur l'ESP, nous devons copier le noyau vmlinuz, l'initramfs initrd.img, et l'image squashé grml64-small.squashfs depuis le fichier ISO vers l'ESP. Pour faire cela, téléchargez grml64-small.iso et montez le fichier (le point de montage est dénoté mnt); le noyau et initramfs sont dans mnt/boot/grml64small/, et l'image squashé est située dans mnt/live/grml64-small.

Ensuite, créez un repertoire pour Grml dans votre ESP,

# mkdir -p esp/grml

et copiez les fichiers mentionnés ci-dessus dedans::

# cp mnt/boot/grml64small/vmlinuz esp/grml
# cp mnt/boot/grml64small/initrd.img esp/grml
# cp mnt/live/grml64-small/grml64-small.squashfs esp/grml

Dans la dernière étape, créez une entée pour le chargeur systemd-boot: Dans esp/loader/entries créez un fichier grml.conf avec le contenu suivant:

esp/loader/entries/grml.conf
title   Grml Live Linux
linux   /grml/vmlinuz
initrd  /grml/initrd.img
options apm=power-off boot=live live-media-path=/grml/ nomce net.ifnames=0

Pour un survol des options d'amorçage, consultez les cheatcode for Grml.

Archiso sur l'ESP

Tip: Un PKGBUILD est disponible: archiso-systemd-bootAUR.

Avec Grml, il est possible d'utiliser l'ISO d'Arch Linux. Pour cela, nous devons copier le noyau vmlinuz-linux, l'initramfs initramfs-linux.img, et l'image squashfs airootfs.sfs depuis le fichier ISO vers la partition système EFI (ESP).

Premièrement, téléchargez archlinux-YYYY.MM.DD-x86_64.iso.

Puis, créez un répertoire pour l'archiso dans votre ESP:

# mkdir -p esp/EFI/archiso

Extrayez le contenu du répertoire arch dans celui-ci:

# bsdtar -v -x --no-same-permissions --strip-components 1 -f archlinux-YYYY.MM.DD-x86_64.iso -C esp/EFI/archiso arch

Dans la dernière étape, créez une entrée d'amorçage pour le chargeur systemd-boot: Dans esp/loader/entries créez un fichier arch-rescue.conf avec le contenu suivant:

esp/loader/entries/arch-rescue.conf
title   Arch Linux (rescue system)
linux   /EFI/archiso/boot/x86_64/vmlinuz-linux
initrd  /EFI/archiso/boot/x86_64/initramfs-linux.img
options repertoireDeBaseDuISO=/EFI/archiso rechercheDuNomDuFichierDuISO=/EFI/archiso/boot/x86_64/vmlinuz-linux

Pour un aperçu des options d'amorçage disponibles, consultez les README.bootparams pour le mkinitcpio-archiso.

systemd-boot sur des systèmes BIOS

Si vous avez besoins d'un chargeur d'amorçe pour un système BIOS qui suit les spécifications du chargeur d'amorçe, alors systemd-boot peut être mis en service sur des systèmes BIOS. Le chageur d'amorçe Clover supporte l'amorçage depuis un système BIOS et fournit un environment UEFI émulé.

Dépannage

systemd-boot ne montre pas mon entrée d'amorçage

Ceci peut être causé par une variété de problèmes avec le fichier de configuration, tels que le chemin du noyau qui a été spécifié incorrectement. Pour vérifier cela, éxécutez:

# bootctl

Installation après amorçage en mode BIOS

Note: Ceci n'est pas recommandé.

Si amorçé dans le mode BIOS, vous pouvez toujours installer systemd-boot, en revanche, ce processus vous fait dire au micrologiciel de lancer le fichier EFI de systemd-boot durant l'amorçage.

  • si vous avez un Shell UEFI fonctionnel à un autre endroit
  • si votre interface micrologiciel vous offre une manière propre de rajouter le fichier EFI qui a besoins d'être chargé à l'amorçage
  • quelques micrologiciels peuvent utiliser esp/efi/boot/BOOTX64.efi par défaut si il n'y a aucune autre entrée définiée dans l'UEFI.

Si voui pouvez le faire, l'installation est plus facile: allez dans votre Shell UEFI ou l'interface de configuration de votre micrologiciel et changez le fichier EFI par defaut vers esp/EFI/systemd/systemd-bootx64.efi.

Note: L'interface micrologiciel de la série Dell Latitude vous fournit tout ce que vous avez besoins pour rajouter l'amorçage UEFI mais le Shell UEFI ne pourra pas écrire vers la mémoire morte.

Entrée manuelle avec efibootmgr

Si la commande bootctl install entraîne une erreur, vous pouvez créer l'entrée d'amorçage UEFI manuellement en utilisant efibootmgr:

# efibootmgr --create --disk /dev/sdX --part Y --loader '\EFI\systemd\systemd-bootx64.efi' --label "Linux Boot Manager" --unicode

/dev/sdXY est l'ESP.

Note: Le chemin vers le binaire EFI doit utiliser une barre oblique inversée (\) comme séparateur

Entrée manuelle en utilisant bcdedit depuis Windows

Si pour n'importe quelle raison vous avez besoins de créer une entrée d'amorçage UEFI depuis Windows, vous pouvez utiliser les commandes suivantes depuis un terminal Administrateur:

> bcdedit /copy {bootmgr} /d "Linux Boot Manager"
> bcdedit /set {guid} path \EFI\systemd\systemd-bootx64.efi

Remplacez guid avec l'id rapportée par la première commande. Vous pouvez également la mettre en tant qu'entrée par défaut en éxécutant:

> bcdedit /default {guid}

Le menu n'apparaît pas après une mise-à-jour Windows

Voir UEFI#Windows changes boot order.

Ajouter le support pour le débloquage TPM de Windows BitLocker =

Pour empêcher BitLocker de demander la clée de récupération, ajoutez ce qui suit à loader.conf:

esp/loader/loader.conf
reboot-for-bitlocker yes

Cela ajoutera la variable UEFI BootNext, où Windows Boot Manager est chargé dans que BitLocker demande la clée de récupération. Ce changement doit être fait qu'une seule fois, et systemd-boot reste comme chargeur d'amorçe par défaut. Il n'y a pas besoins de spécifier Windows comme entrée si cela a déjà été détecté automatiquement.

Ceci est une fonctionnalité expérimentale, veuillez consulter loader.conf(5).

Voir également