Installation sur disque externe (sdb) et efi

bonjour ;

si possible j’aimerais bien comprendre ce que je n’ai pas fait et aurait dû faire pour avoir un efi sur sdb et non sur sda qui comporte une partition d’amorçage efi pour 2 OS . sdb comporte des tables de partition type DOS .

  • procédure utilisée avec debian 9.7
  • partition efi de 150 Mo définie en manuel ( sur sdb bien sûr )
  • partitions avec ext4 pour "/ " " /home " “swap” et /windows ( fat32 )

arrivé à la fin l’installateur ne m’a rien demandé et a installé d’autorité l’amorçage sur le disque interne sda …d’où un sérieux problème : mon portable nécessitait sdb pour démarrer ( résolu depuis mais bon ) .

  • note : avec ubuntu 18.04 je n’avais eu aucun problème pour placer l’amorçage efi sur sdb ( tables de partitions type DOS là encore )

La méthode d’installation est bien en mode expert ?

je ne pense pas car j’ai réalisé une installation graphique ordinaire . Je n’ai rien d’un expert d’ailleurs .

La partition EFI avait bien été déclarée comme “utiliser comme partition d’amorçage EFI” lors de l’étape de partitionnement ?

lors du partionnement j’ai simplement créé une partition de 150 Mo que j’ai déclaré comme partition EFI . J’ai bien vérifié à posteriori avec gparted qu’elle était présente . Malheureusement je n’ai pas noté toute la ligne de gparted ( point de montage et drapeaux éventuels ) . Comme souvent je pense après .

Partitionnement avec l’installateur lors de l’installation ou avant avec un autre logiciel ?

ce disque a une histoire de 4/5 ans environ : disque de sauvegarde avec W7 , de mémoire sans partitionnement juste un formatage sous W7, puis tentative d’installation de jessie avec le même problème non résolu que l’actuel , outil debian , puis installation réussie de ubuntu 18.04.1 ( efi sur le disque avec la même démarche que sous debian et partitionnement ubuntu ) et enfin tentative de debian 9.7 avec partitionnement outil debian .

  • épilogue : ubuntu a refusé de s’installer car il a détecté un disque dur défectueux (solution probable je suppose )

note : l’installateur ubuntu demande dès le début sur quel disque placer EFI = au moins c’est clair

Je ne vois pas le rapport entre un disque défectueux et le choix de la partition EFI par l’installateur.

Par ailleurs j’ai testé l’installateur Debian avec deux partitions EFI sur le même disque : il utilise bien celle qui est marquée “utiliser comme partition EFI”. Je ne vois pas pourquoi ce serait différent avec des partitions EFI sur deux disques différents.

La partition EFI de l’autre disque était bien marquée “ne pas utiliser” ? Si les deux étaient marquées “utiliser comme partition EFI”, le résultat est imprévisible.

bonjour ;

donc ce que je pensais être une solution possible ne le serait pas ?

La partition EFI de l’autre disque était bien marquée “ne pas utiliser” ? Si les deux étaient marquées “utiliser comme partition EFI”, le résultat est imprévisible.

je n’ai vu nulle part la précision " ne pas utiliser " pour la partition EFI/sda : il faudrait donc dire à l’installateur de ne pas l’utiliser ? Mais je n’ai pas vu cette possibilité offerte … j’aurais donc loupé un truc lors de l’installation ? Pourtant je viens de simuler une installation jusqu’au partitionnement et je n’ai de nouveau rien vu concernant la partition EFI/sda .

autres possibilités :

  • radicale = débrancher mon ssd sda = je préfère installer ubuntu
  • éventuellement si possible : désactiver le sda dans le “bios” ( bios efi de Insyde H2O ) = ?

voilà qui est clair ( de 2018 ) https://www.linuxquestions.org/questions/debian-26/install-debian-on-external-drive-postable-install-with-bootloader-included-4175639408/

" 4) Then the install went through with success. I was a bit puzzled because it did not ask me where to install the boot loader ??
… plus bas
"Here’s where my experience with UEFI type installs comes in handy. I have noticed that on the latest Debian installers, it does NOT ask you where you want to install the bootloader, if it detects UEFI. It’ll just install a Debian menu choice on the internal drive’s EFI bootloader. This is okay, if you never want to boot up your USB drive on any other computer. But if you do want to boot up your USB drive from another computer? Whoops, you’re out of luck! "

donc si ce texte est correct le problème est résolu = il n’a pas de solution simple et je n’aurais ( conditionnel ) pas fait de bévue lors de mon installation .

Dans un tel cas l’installation par ligne de commande devrait résoudre le problème je suppose = hors de ma portée …
à moins qu’il existe une installation mixte , que je puisse tout faire en graphique et arrivé à grub j’utilise ceci https://d-i.debian.org/manual/fr.amd64/apds03.html#idm4561 en changeant /dev/sda en /dev/sdc . Possible ou pas ?
" D.3.6. Configurer le programme d’amorçage

Pour que votre système Debian GNU/Linux puisse démarrer, configurez le programme d’amorçage pour qu’il charge le noyau installé avec votre nouvelle partition racine. Debootstrap n’installe pas de programme d’amorçage mais vous pouvez utiliser apt pour en installer un.

Faites info grub ou man lilo.conf pour connaître les instructions de configuration du programme d’amorçage. Si vous souhaitez conserver le système dont vous vous êtes servi pour installer Debian, ajoutez simplement une entrée pour l’installation de Debian dans votre grub.cfg ou dans votre lilo.conf .

L’installation et la configuration de grub2 est aussi simple que ça :

apt install grub-pc

grub-install /dev/sda

update-grub "

C’est vrai, car GRUB EFI s’installe implicitement dans la partition EFI montée sur /boot/efi. Ce montage est défini bien avant, lors du partitionnement.

C’est faux, je viens de vérifier expérimentalement. Comme je l’ai écrit précédemment, l’installateur utilise la partition EFI marquée “utiliser comme partition système EFI”.
Attention : si on choisit le partitionnement manuel (ce que je fais toujours), toutes les partitions EFI présentes peuvent être marquées comme à utiliser par défaut, aussi il faut marquer celles qu’on ne veut pas comme “ne pas utiliser”. C’est comme les swaps.

Ces instructions sont pour installer GRUB BIOS, pas GRUB EFI.
Pour installer GRUB EFI PC 64 bits, il faut installer le paquet grub-efi-amd64.

En mode EFI grub-install n’a pas besoin de spécifier un périphérique, l’amorçage EFI n’utilise pas de secteur d’amorce. Par contre si le disque externe doit être utilisé sur une autre machine (UEFI PC 64 bits aussi), il faut utiliser l’option --removable qui correspond au chemin de périphérique amovible.

Attention : si cette installation est réalisée avec un PC qui a déjà une installation de Debian en mode EFI sur son disque interne, l’installation de GRUB EFI sur le disque externe va remplacer l’entrée “debian” du système Debian installé sur le disque interne dans les variables d’amorçage du firmware UEFI.

Cela risque de ne désactiver que la prise en charge du disque par le firmware BIOS ou UEFI, et donc pour les programmes comme les chargeurs d’amorçage qui se basent dessus, mais d’être sans effet sur le noyau Linux qui utilise ses propres pilotes indépendamment du firmware.
Je ne connais qu’un seul cas (Dell Optiplex) où cela a désactivé effectivement le port SATA, empêchant Linux d’utiliser le disque connecté dessus.

il ne reste plus qu’à savoir comment faire pour marquer la partition efi/sda pour que l’installateur l’ignore ( et accessoirement swap/sda car j’ai vu qu’il la formate automatiquement ) . Donc en pratique comment fait-on depuis l’installateur ?

Dans “partitionner les disques”, sélectionner la partition pour la configurer. Dans le champ “utiliser comme”, sélectionner “ne pas utiliser cette partition”.

j’ai compris le truc peu après et j’ai donc indiqué à l’installateur de ne pas utiliser sda1 où se trouve efi/sda ; idem pour swap/sda .
effectivement swap/sda n’a pas été formaté , efi s’est bien installé sur sdc = dd externe mais le drapeau “boot” de sda a disparu ( vérifié à partir de ubuntu-live et de fdisk -l qui indiquait boot et non boot* comme pour la clé d’installation et pour sdc ) , et mon portable ne démarrait plus tout seul . J’ai donc utilisé boot-repair à partir du live ubuntu . Encore une erreur de ma part ? Franchement je ne vois pas .

Quel drapeau boot ? Un disque n’a pas de drapeau boot. Une partition primaire de la table DOS/MBR peut. sda a une table de partition DOS/MBR ?

j’ai appelé ça un drapeau mais en fait c’était un " * " qui apparaissait sur la clé d’installation et le disque externe sdc sous la forme boot* alors que sur sda il n’y avait que boot avec la commande fdisk -l

de plus : tables de partition = GPT pour mon portable et msdos pour sdc .

Un “*” dans la colonne “boot” d’une table de partition DOS indique l’activation du drapeau d’amorçage (boot flag) de cette partition. Mais fdisk n’affiche pas de colonne “boot” avec une table de partition GPT car ce drapeau n’existe pas (il a bien été prévu un attribut “legacy boot” dans le format GPT mais en pratique il ne sert à rien donc il n’est pas utilisé).

Attention : le drapeau de partition “boot” affiché par parted, gparted et l’installateur Debian a deux significations différentes selon le type de table de partition :

  • DOS/MBR : indicateur d’amorçage traditionnel
  • GPT : équivalent au drapeau “esp” qui désigne une partition système EFI.

maintenant que j’ai remis grub-efi d’aplomb avec https://wiki.debian.org/GrubEFIReinstall ( boot-repair m’avait un peu compliqué l’écran de sélection ) je vais laisser reposer l’affaire et attendre mon nouveau disque ssd .
Mon dernier essai , toujours avec non-utilisation de sda1 , m’a bien conservé l’amorçage de mon portable mais c’est mon disque externe qui tant qu’il restait connecté était détecté par mon bios mais une une fois déconnecté puis reconnecté le bios ne le listait plus ! Comme c’est le hdd que ubuntu a déclaré défectueux mais que debian a accepté je réessaierai avec le ssd que je vais acheter … des fois que …

merci de l’aide au moins j’ai appris des choses .

pour info là aussi
sur mon nouveau ssd fonctionnel ( après échange à la boutique ) j’ai observé ceci ( comme auparavant ) :

  • efi s’installe bien sur sdc
  • efi de debian/ubuntu en double amorçage se conserve sur sda mais debian/sda disparaît de la liste des amorçables
  • debian/sdc s’amorce sans problème même déconnecté puis reconnecté
    mais :
  • en utilisant https://wiki.debian.org/GrubEFIReinstall et en réinstallant efi/sda à partir de debian/sda qui devient réamorçable c’est alors sdc qui devient invisible sur mon portable !!!
    mais :
    comme ce sdc comporte bien un efi normalement constitué je l’ai essayé sur mon portable W10 et là il amorce sans problème .

conclusion perso : il semble y avoir incompatibilité pour 2 systèmes debian sur 2 supports différents sur mon portable ldlc avec UEFI Insyde H2O .