Amorçage ok sur un ordi et pas sur l'autre

j’y suis et après avoir détecté le mode EFI il me demande :

  1. réinstallation du programme de démarrage GRUB
  2. faut-il forcer l’installation de GRUB sur le chemin EFI amovible ? D’après ce que j’ai compris cette option a été ajoutée à l’installateur pour corriger un bug qui empêchait le système d’amorcer même avec grub au bon endroit ( bug=767037 ) . Serait-ce mon cas ?

l’essai de 1) a échoué de même qu’un shell dans /dev/sdc2 là où devrait se trouver le dossier EFI : il indique “impossible de trouver le répertoire EFI” .

en choisissant l’option 2 un avertissement apparaît :

"cette machine est configurée pour démarrer avec EFI mais il est possible que certains microcodes soient bogués . On peut installer une copie supplémentaire de EFI à un emplacement de secours = le chemin des supports amovibles et GRUB se lancera .
Cependant si le programme d’installation ne détecte pas un OS qui dépende aussi de ce contournement alors GRUB empêchera cet OS de démarrer . Toutefois le programme de GRUB pourra être manuellement reconfiguré plus tard pour permettre le redémarrage "

puis vient " faut-il forcer etc …"

Oui, ça ne peut pas faire de mal. Cela équivaut à la commande
grub-install --force-extra-removable
et installe une copie du chargeur dans /boot/efi/EFI/boot.

Non, ce serait plutôt l’inverse : le chemin des supports amovibles ne semble pas pris en compte, du moins sur le disque.

Comment ça," un shell là où devrait se trouver le dossier EFI" ? Tu as bien sélectionné la partition racine du système installé sur le disque ? /boot est sur une partition séparée ? Si oui, il faut la monter mais l’installateur devrait le détecter et le proposer automatiquement.

Aucun risque si la bonne partition système EFI est montée, il n’y a pas d’autre chargeur sur ce disque…

pas de chance même cette dernière option ne fonctionne pas .

avant d’aller plus loin j’ai ressorti ma liste de commandes linux et à partir de /dev/sdc2 j’obtiens :

  • ls -a /boot présent dans la liste
  • ls -l /boot plusieurs lignes dont drwxr -xr -x 2 root root 4096 jun 30 efi
  • ls -l /boot/efi total 0
  • mount /boot/efi impossible de trouver uuid=8045-7cb4

**donc il semblerait que le répertoire EFI n’existe pas pour l’installateur , or j’ai vérifié avec ls directement sur le D.E et il est bien là mais l’installateur ne le reconnaît pas .

**quant à l’uuid non reconnue j’ai édité /etc/fstab :

/boot/efi was on /dev/sda1 during installation

UUID=8045-7CB4 /boot/efi vfat umask=0077 0 1

ci-dessus c’était hier ( mais fini de rédiger ce matin ) .

Ce matin j’ai réinstallé stretch sur le même DE avec le même asus 1 . J’ai supprimé la partition " microsoft re " et donc sdc2 est devenu sdc1 avec exactement les mêmes résultats qu’hier .

après la nouvelle installation donc DE actuel
root@debian:/home/mm# ls -l /boot/efi/EFI
total 4
drwx------ 7 root root 1024 juin 24 2015 ASUS
drwx------ 2 root root 1024 juil. 1 13:04 Boot
drwx------ 2 root root 1024 juin 30 10:07 debian
drwx------ 4 root root 1024 juin 24 2015 Microsoft

/ was on /dev/sdc1 during installation

UUID=4542d5aa-3208-4bda-a6a9-2f1cde247788 / ext4 errors=remount-ro 0 1

/boot/efi was on /dev/sda1 during installation

UUID=8045-7CB4 /boot/efi vfat umask=0077 0 1

/home was on /dev/sdc2 during installation

UUID=c5eef0ef-0543-491c-8fc7-62f1f6671b20 /home ext4 defaults 0 2

/windows was on /dev/sdc4 during installation

UUID=3718-D97A /windows vfat utf8 0 0

swap was on /dev/sdc3 during installation

UUID=d6f86d3e-099c-4cf4-b2a7-94224d22da48 none swap sw 0 0

Je suis une andouille. Je supposais que le disque externe avait sa propre partition système EFI et qu’elle était utilisée par l’installation de Debian, parce que c’est ce que je ferais systématiquement. Mais ce n’est pas ce que fait l’installateur Debian. S’il trouve une partition système EFI sur n’importe quel disque présent, il s’en contente et l’utilise. Donc il a utilisé la partition système EFI du disque interne (sda1), et forcément, quand on branche le disque externe sur un autre PC, la partition n’est plus là. Pour forcer l’installation à utiliser une partition système EFI particulière, il faut passer en partitionnement manuel, la créer soi-même et définir /boot/efi comme point de montage.

Néanmoins cela n’empêche pas d’utiliser L’option d’installer GRUB BIOS dans le MBR du disque externe pour démarrer en mode CSM.

Mais si tu veux que le disque externe soit amorçable en mode EFI de façon indépendante, il doit avoir sa propre partition système EFI. La taille recommandée est 250 à 500 Mo mais elle n’a pas besoin d’être aussi grosse car elle ne contient que le fichier grubx64.efi et éventuellement sa copie bootx64.efi. Cette partition peut être créée sans réinstaller en réduisant un peu la taille de la partition / ou /home (réduire cette dernière ne nécessite pas de démarrer avec un autre système, il suffit de démarrer en mode dépannage et la démonter).

EDIT : Je t’avais répondu

L’ennui, c’est que ce n’était pas la bonne partition système EFI qui était montée. Donc grub-install --removable a remplacé le chargeur de secours de Windows par une copie de GRUB. Ce n’est pas gênant tant que l’entrée d’amorçage EFI normale de Windows fonctionne…

  1. [quote=“PascalHambourg, post:26, topic:73821”]
    L’ennui, c’est que ce n’était pas la bonne partition système EFI qui était montée.
    [/quote]
    en fait il a refusé d’exécuter la commande et donc rien n’a changé et W10 démarre comme avant

  2. gparted ( je suis sous debian ) m’indique :
    dev/sda1 ( image d’une clé ) EFI system partition fat32 /boot/efi SYSTEM 100 Mio
    28.5 Mio ( utilisés ) 71.5 Mio boot,esp

donc elle était là avant , c’est W10 qui l’a créée et l’installateur a ajouté son répertoire /boot/efi ?

  1. je vais utiliser /windows la dernière partition de mon DE ( une importance ou pas ? ) la rétrécir et créer une partition /boot/efi ( fichier ext4 )séparée mais je mets quoi dedans ? une copie du répertoire du /boot actuel sur mon DE ou grub-install fera le nécessaire ?

  2. comment on réalise un point de montage après une installation ? niveau débutant ou pas ? sinon je refais mon installation en prenant soin de prévoir une partition pour /boot en espérant que l’installateur l’utilise car s’il préfère le EFI de sda1 c’est cuit .

Je parlais de la commande que je t’ai fait exécuter alors que le disque externe était branché au premier portable.

Oui.

Non, si tu peux la réduire “proprement” (d’abord le système de fichiers FAT, ensuite la partition). Gparted fait les deux en même temps dans le bon ordre pour les types de systèmes de fichiers supportés, mais pas les programmes en ligne de commande comme fdisk ou parted ne redimensionnent pas les système de fichiers et je ne connais pas de programme en ligne de commande qui redimensionne un système de fichiers FAT.

Edit : je viens de trouver fatresize.

Note : une sauvegarde des données importantes avant tout redimensionnement est souhaitable.

Une partition système EFI doit être formatée en FAT car elle doit pouvoir être lue par le firmware UEFI, qui ne comprend pas ext4.

Si tu veux le faire manuellement, tu peux y copier grubx64.efi en tant que bootx64.efi en tant que bootx64.efi dans un répertoire EFI/boot, mais je recommande plutôt de

  • démonter la partition EFI du disque interne
  • remplacer son UUID par celui de la nouvelle partition EFI du disque externe dans /etc/fstab
  • monter la partition EFI du disque externe
  • installer GRUB EFI dans le chemin de support amovible avec grub-install --removable

Il ne s’agit pas de /boot mais seulement de /boot/efi.