Je essayais d'installer GRUB sur une clé USB. Je veux créer un disque USB multi-boot, mais je reçois une erreur de répertoire EFI introuvable
. Comment puis-je créer avec succès une partition EFI sur ma clé USB ?
Réponses
Trop de publicités?Vous pouvez utiliser GParted pour cette tâche (créer une partition EFI) ... pour l'installer, ouvrez un terminal et exécutez :
sudo apt install gparted
Ouvrez GParted depuis le Dash, sélectionnez le lecteur USB, créez une nouvelle table de partitions gpt
et créez ensuite de nouvelles partitions. Voici une présentation que j'ai faite sur la façon de le faire -> Comment préparer un disque avec GParted
La création d’une partition système EFI (ESP) peut se faire de plusieurs manières, mais cela n’est que le début de ce que vous devez faire. Une ESP est une partition avec un code de type GPT de C12A7328-F81F-11D2-BA4B-00A0C93EC93B (ou, sur un disque MBR, un code de type 0xEF) et qui utilise le système de fichiers FAT32 (bien que FAT16 ou même FAT12 puissent généralement être utilisés). Sous Linux, les outils basés sur libparted, tels que GParted et parted
, identifient l’ESP sur un disque GPT par la présence d’un "boot flag", vous devez donc définir ce drapeau sur l’ESP – mais cela fonctionne uniquement sur les disques GPT. (Je pense que les versions récentes de libparted utilisent le "drapeau esp" comme synonyme de "boot flag", vous pourriez donc définir cela à la place. Cela pourrait fonctionner également sur les disques MBR, mais je n'en suis pas sûr.) Dans GPT fdisk (gdisk
, sgdisk
, et cgdisk
), elle est identifiée par un type de partition de EF00.
Si vous créez une ESP avec GParted, il peut créer le système de fichiers FAT en même temps que vous créez la partition. Si vous utilisez parted
ou GPT fdisk, vous devrez le faire en exécutant mkdosfs
ou un autre outil.
Une fois que la partition est créée, vous devez copier un chargeur de démarrage dans le fichier EFI/BOOT/bootx64.efi
(en supposant que vous démarrez sur des systèmes x86-64 avec des EFIs 64 bits). Vous mentionnez GRUB, et cela peut être délicat car GRUB dépend de fichiers de configuration avec des emplacements intégrés dans le binaire GRUB ; mais le GRUB standard d’Ubuntu recherche son fichier de configuration sur votre disque dur. Il existe des scripts d’installation de GRUB qui peuvent aider à configurer les choses automatiquement, mais je ne les connais pas très bien. Vous pourriez envisager d’utiliser mon gestionnaire d’amorçage rEFInd à la place. Il recherchera automatiquement les chargeurs de démarrage au démarrage, il nécessitera donc très probablement très peu de configuration, et son fichier de configuration réside dans le même répertoire que le binaire rEFInd.
Encore une mise en garde : Si votre clé USB doit être amorçable sur des ordinateurs avec Secure Boot activé, vous devrez copier shimx64.efi
, pas grubx64.efi
ou refind_x64.efi
, dans le fichier EFI/BOOT/bootx64.efi
de la clé USB ; puis copier le chargeur de démarrage suivant en tant que grubx64.efi
. rEFInd pourrait ne pas être le meilleur choix dans ce cas, car l’utiliser nécessiterait d’ajouter manuellement les clés de rEFInd à chaque ordinateur que vous utilisez avec Secure Boot activé. (D'un autre côté, si vous voulez simplement démarrer sur un ordinateur, cela pourrait être un coût acceptable.)