Problème de double boot

Bonjour à tous,

J’ai voulu installé Debian sur mon PC portable qui possède déjà Win10.

J’ai donc désactivé le fast boot et le secure boot connu pour foutre la zone et j’ai installé Debian. Le problème est que je n’ai jamais pu booter dessus. J’avais a chaque fois mon Win10 qui démarrait directement.

J’ai donc essayé la chose suivante : j’ai passé mon Bios de UEFI a legacy et puis j’ai réinstallé Debian. Ce coup ci le grub se lance bien et je peux lancer Debian par contre Win10 n’apparaît pas dans les choix même après un update-grub.

J’ai repassé le bios en UEFI et de nouveau j’ai Win10 qui démarre direct…

Comment puis-je faire pour avoir le choix de l’OS au démarrage?

Edit : Si il faut que je réinstalle Debian c’est pas un problème vu que l’installation de celui-ci est toute fraîche je ne perdrais rien.

Qu’est-ce qui a été tenté pour lancer Debian ?
Y avait-il une entrée « debian » dans le menu de boot UEFI ou dans l’ordre de priorité des paramètres de boot UEFI ? Si oui, que se passait-il lors de la sélection de cette entrée ?

Normal, la variante de GRUB pour amorçage BIOS/legacy ne peut pas chaîner un chargeur pour amorçage UEFI. Cette solution n’est pas la plus pratique mais ainsi au moins Windows ne risque pas de détraquer le boot de Debian.

Pour éviter de réinstaller, tu peux installer les paquets grub-efi-amd64-bin et efibootmgr et monter la partition EFI sur /boot/efi dans /etc/fstab. Ensuite démarre l’installateur Debian avec amorçage UEFI en mode rescue, lance un shell sur la racine, monte la partition EFI, exécute grub-install et poste la sortie de efibootmgr.

Les pages de wiki.debian.org sur l’amorçage UEFI contiennent des informations intéressantes.

Hello. Même problème ici !
Et je comprends rien aux explications :expressionless:
Je vais laisser comme ça au moins quand je veux windows je mets
sur UEFI et quand je veux debian je reviens en legacy…

Les (supposément) mêmes effets n’ont pas toujours les mêmes causes. Dans mon expérience, quand quelqu’un s’incruste dans un sujet en proclamant qu’il a le même problème, la moitié du temps il s’agit d’un problème différent. Mais il est tellement persuadé que c’est le même problème qu’il ne prend pas la peine de le décrire (puisque c’est le même, on vous dit).

A part ça, vos firmwares UEFI ne permettent pas d’activer à la fois l’amorçage BIOS/legacy et l’amorçage UEFI, et ainsi de sélectionner la source à amorcer dans le menu de démarrage ?

1 J'aime

Bonjour,

Qu’entends tu par « firmware UEFI », moi le seul endroit ou je vais faire des modifs c’est le bios. Et dans ce dernier je ne peux choisir que UEFI ou Legacy. Serais-je passé à coté de quelque chose?

Pour en revenir à mon problème, j’ai trouvé plus simple de réinstaller le debian en ayant justement le mode UEFI actif dans le BIOS. Donc comme la première fois il y’a Windows qui démarre direct sans que j’ai la possibilité de choisir autre chose.

Pour aller plus loin voici ce que je vois lorsque je tape F12 lors du démarrage, il n’y a que Windows :
IMG_20200522_201427

Et voici mes paramètres de boot dans le bios :
IMG_20200522_201556

HDD0 c’est mon disque SSD. Il contient Windows et Debian.
HDD1 c’est mon disque de data.

Donc à partir de la que dois je faire pour pouvoir avoir mon multiboot? Si il y’a d’autres tests à faire ou si il y’a des choses que tu as besoin de savoir, demandes moi.

Si je comprends bien, « Boot mode » ne propose que « UEFI » ou « legacy », et pas « UEFI+legacy » ?

Oui c’est tout à fait ça.

EDIT :
J’ai pu corriger mon problème de la manière suivante.
En étant sous windows il faut lancer une invite de commande (en administrateur) et y taper la ligne suivante : bcdedit /set ‹ {bootmgr} › path \EFI\debian\grubx64.efi
Ceci va faire que le système va booter sur grub et non pas sur windows.
Une fois sur grub c’est comme d’habitude, on choisit Windows ou Debian.

Voila :slight_smile:

On peut voir la sortie de

efibootmgr -v
# efibootmgr -v
BootCurrent: 0001
Timeout: 0 seconds
BootOrder: 0001,0002,2001,2002,2003
Boot0000* debian        HD(1,GPT,aed9d276-7ee0-44d5-804d-eb93c4cf3fa3,0x800,0x32000)/Fil
e(\EFI\debian\shimx64.efi)
Boot0001* Windows Boot Manager  HD(1,GPT,aed9d276-7ee0-44d5-804d-eb93c4cf3fa3,0x800,0x32
000)/File(\EFI\debian\grubx64.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.
2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...a................
Boot0002* Windows Boot Manager  HD(1,GPT,aed9d276-7ee0-44d5-804d-eb93c4cf3fa3,0x800,0x32
000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)RC
Boot2001* EFI USB Device        RC
Boot2002* EFI DVD/CDROM RC
Boot2003* EFI Network   RC

Ha oui c’est vrai quoiqu’on fasse dans un forum debian on a tort.

Avant de décrire mon problème j’ai cherché le forum et je suis tombé sur ce topic.

Pour avoir les notifs j’ai posté un message je me suis ‹ incrusté › comme tu dis.

Si je l’avais décrit (même pb : que legacy ou UEFI dans le bios l’un boote
sur debian l’autre sur windows, bref j’aurais pu faire un copier/coller
de ce qu’a dit snake), je me serais fait reprendre parce que ouin ouin
t’as pas cherché c’est un problème connu blabla blabla…

Donc snake je te remercie j’essaie ta soluce demain pour voir
si ça résout mon problème et Pascal je te pardonne car plus d’une
fois tu m’as sorti du pétrin :slight_smile:

Paix amour et UEFI.

Une entrée Boot0000 avait bien été créée pour Debian, mais son numéro ne figure pas dans BootOrder. C’est peut-être pour cela qu’elle n’est pas affichée dans le menu de boot. Cela aurait pu être corrigé en modifiant la valeur de BootOrder avec efibootmgr.

Tu peux voir l’effet de la commande bcdedit dans l’entrée Boot0001.

Ce n’est pas ce que j’ai écrit.

Ce n’était pas ça, son problème. Son problème était que suite à l’installation de Debian en mode UEFI les variables de boot UEFI (en particulier BootOrder) n’ont pas été correctement initialisées, rendant l’amorçage de Debian impossible. Ensuite il a forcé l’installation de Debian en mode legacy, qui forcément n’était amorçable qu’en mode legacy. La commande bcdedit n’a fonctionné que parce que le chargeur GRUB UEFI de l’installation précédente était resté dans la partition EFI et que la nouvelle installation était suffisamment semblable (même numéro de partition contenant /boot) pour qu’il puisse la démarrer. Il a eu de la chance.

Edit : ça n’aurait pas marché avec Debian Stretch qui aurait installé une version de GRUB non signée pour le secure boot, qui n’installe qu’une image minimale dans la partition EFI et va chercher la plupart des modules dans la partition racine/boot qui auraient disparu suite à la réinstallation en mode legacy. Debian Buster installe la version de GRUB signée pour le secure boot qui installe une image beaucoup plus complète dans la partition EFI et n’a pas besoin des modules dans /boot. Donc il a eu doublement de la chance.

Par contre si tu as installé directement Debian en mode legacy, GRUB ne sera pas dans la partition EFI et la commande bcdedit ne marchera pas. Mais ça peut s’arranger sans réinstaller.

Tu vois, l’historique compte autant que les symptômes.

1 J'aime

Cool je vais pouvoir créer mon fil.