Je rencontre un problème pour définir l'ordre de démarrage car je souhaite que ce soit sur mon ordinateur à démarrage multiple contenant Windows 10 - Ubuntu 15.10 - Fedora 23.
Voici ce que j'ai fait: Avant, je n'avais qu'un double démarrage avec Windows 10 et Ubuntu 15.10 qui fonctionnait comme prévu:
Comme je voulais essayer d'autres distributions Linux, j'ai installé Fedora 23.
Il est arrivé que Fedora prenne le pouvoir sur le démarrage. J'ai d'abord dû changer la configuration de démarrage de Fedora, en remplaçant linux et initrd par linuxefi et initrdefi pour pouvoir démarrer sur Ubuntu, comme expliqué ici .
Je peux alors accéder à tout le système d'exploitation installé sur mon ordinateur. Mais je veux rendre le pouvoir d’amorçage à Ubuntu.
J'ai donc d'abord essayé la réparation de démarrage lancée à partir d'Ubuntu, mais ce n'est pas efficace.
J'ai ensuite essayé d'utiliser efibootmgr:
$ Sudo efibootmgr
Mot de passe [Sudo] pour xavier :
BootCurrent: 0004
Timeout: 2 seconds
BootOrder: 0004,0006,0000,0007,0001,0002,0003
Boot0000* Windows Boot Manager
Boot0001* ubuntu
Boot0002 UEFI: IP4 Qualcomm Atheros PCIe Network Controller
Boot0003 UEFI: IP6 Qualcomm Atheros PCIe Network Controller
Boot0004* Fedora
Boot0006* grub
Boot0007* ubuntu
Ensuite, j'ai essayé à la fois sur Ubuntu et Fedora de modifier l'ordre:
$ Sudo efibootmgr --bootorder 0006,0004,0000,0001,0007,0002,0003
BootCurrent: 0004
Timeout: 2 seconds
BootOrder: 0006,0004,0000,0001,0007,0002,0003
Boot0000* Windows Boot Manager
Boot0001* ubuntu
Boot0002 UEFI: IP4 Qualcomm Atheros PCIe Network Controller
Boot0003 UEFI: IP6 Qualcomm Atheros PCIe Network Controller
Boot0004* Fedora
Boot0006* grub
Boot0007* ubuntu
Mais au redémarrage, les modifications que j'ai apportées avec efibootmgr ne s'appliquent pas, et si je redemande efibootmgr pour le bootorder, cela me donnera celui avec Fedora ...
Je pense que le problème peut provenir de différents paramètres que je ne comprends pas vraiment, tels que:
Merci à tous ceux qui peuvent me donner un peu d’aide pour obtenir une installation propre.
EDIT: La réponse de Rod Smith me fait comprendre que je peux obtenir plus d'informations avec l'argument -v:
$ Sudo efibootmgr -v
BootCurrent: 0004
Timeout: 2 seconds
BootOrder: 0004,0006,0000,0007,0001,0002,0003
Boot0000* Windows Boot Manager HD(2,GPT,e0e2d47c-9086-47d6-b1e5-0ec248d9d6f0,0x12c800,0x96000)/File(\EFI\Microsoft\BOOT\BOOTMGFW.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.}...3................
Boot0001* ubuntu HD(2,GPT,e0e2d47c-9086-47d6-b1e5-0ec248d9d6f0,0x12c800,0x96000)/File(\EFI\UBUNTU\SHIMX64.EFI)
Boot0002 UEFI: IP4 Qualcomm Atheros PCIe Network Controller PciRoot(0x0)/Pci(0x1c,0x3)/Pci(0x0,0x0)/MAC(448a5b4783b6,0)/IPv4(0.0.0.0:0<->0.0.0.0:0,0,0)..BO
Boot0003 UEFI: IP6 Qualcomm Atheros PCIe Network Controller PciRoot(0x0)/Pci(0x1c,0x3)/Pci(0x0,0x0)/MAC(448a5b4783b6,0)/IPv6([::]:<->[::]:,0,0)..BO
Boot0004* Fedora HD(2,GPT,e0e2d47c-9086-47d6-b1e5-0ec248d9d6f0,0x12c800,0x96000)/File(\EFI\Fedora\SHIM.EFI)
Boot0006* grub HD(2,GPT,e0e2d47c-9086-47d6-b1e5-0ec248d9d6f0,0x12c800,0x96000)/File(\EFI\GRUB\SHIMX64.EFI)
Boot0007* ubuntu HD(2,GPT,e0e2d47c-9086-47d6-b1e5-0ec248d9d6f0,0x12c800,0x96000)/File(\EFI\UBUNTU\GRUBX64.EFI)
Grâce à cela post de Rod Smith, j'ai bien compris le rôle des deux entrées ubuntu. Mais le vers, semble être indésirable car le fichier n'existe pas:
$ ls -a
. .. Boot Fedora Microsoft MSI ubuntu
Je devrais peut-être l'effacer?
J'ai ensuite essayé un ordre différent:
$ Sudo efibootmgr --bootorder 0001,0004,0000,0006,0007,0002,0003
Mais malheureusement, les changements ne fonctionnent pas.
Alors si je comprends bien la réponse de Rod Smith, la solution unique consiste à effacer l’entrée Fedora? Cela poserait peut-être quelques problèmes si je voulais un jour ne garder que Fedora, mais avant cela, cela me permettrait de démarrer sur USBLive?
Merci encore !
J'ai enfin, grâce à l'aide de Rod Smith, trouvé une solution pour choisir l'ordre de démarrage que je veux.
Comme il l'a mentionné pour désactiver le démarrage sécurisé, j'ai accédé aux paramètres du bios et, comme prévu, le démarrage sécurisé était déjà désactivé, mais j'ai saisi l'opportunité d'être dans les paramètres du bios/uefi pour changer sans l'ordre de démarrage de efibootmgr. .
Ensuite, j'ai choisi de démarrer d'abord sur un périphérique USB, puis j'ai établi un ordre pour le démarrage sur le disque dur, avec Ubuntu en premier, et tout fonctionne!
Je pense donc clairement que lorsque efibootmgr n’est pas en mesure, pour une raison quelconque, de modifier l’ordre, entrer directement dans les paramètres bios/uefi peut constituer la meilleure option, sans être vraiment difficile.
J'espère que cela pourrait aider les autres.
Merci encore pour votre aide.
Xavier
Je commencerai par répondre aux questions à la fin de votre message:
MokManager.efi
sous EFI. Je pense que l'utilitaire sb-updatevar
peut le faire sous Linux également, mais j'ai moins d'expérience. Voir ici pour plusieurs clés dans un endroit pratique; vous aurez besoin des touches .cer
ou .der
. Voir ma page sur Secure Boot pour plus d'informations à ce sujet.En ce qui concerne votre problème principal, la commande efibootmgr -o
(ou efibootmgr --bootorder
) devrait donner le contrôle sur le programme d’amorçage que vous spécifiez. Notez cependant que vous vouliez probablement donner le contrôle à Boot0001
ou Boot0007
, pas Boot0006
- Ubuntu utilise le nom ubuntu
, pas grub
, décrire ses propres entrées de démarrage. Vous pouvez mieux identifier chacun d'eux en tapant Sudo efibootmgr -v
, ce qui produit des chemins d'accès complets aux entrées de démarrage (identifiées à l'aide d'identifiants de chemin EFI, longs et complexes, et faisant notamment référence aux partitions GUID nombres que vous pouvez obtenir avec gdisk
ou certaines versions de blkid
). Ainsi, avant de faire quoi que ce soit, vous voudrez peut-être essayer de modifier l'ordre de démarrage pour lui attribuer la valeur correcte plutôt que de Boot0004
.
En pratique, les modifications de efibootmgr
échouent parfois à cause de EFI erronés ou de données corrompues dans la NVRAM de la machine (c'est là que sont stockées les données affichées par efibootmgr
. Trois solutions à ces problèmes sont couramment utilisées:
Sudo efibootmgr -b 0004 -B
pour supprimer Boot0004
corrigera un problème. (Vous pouvez ou non vouloir réellement supprimer cette entrée, cependant.) Parfois, vous devrez peut-être supprimer plusieurs entrées de démarrage pour que le système fonctionne à nouveau. Ne supprimez pas les entrées à démarrer. De plus, la plupart des ordinateurs ont des entrées créées par le microprogramme, comme les deux entrées Network Controller
de votre sortie. La suppression de ces entrées est généralement déconseillée.Reculant un peu plus loin, je dirai que peu importe le type de GRUB que vous utilisez (celui de Fedora ou celui d'Ubuntu); ce sont essentiellement les mêmes logiciels. Si vous rencontrez des problèmes pour configurer le GRUB de Fedora afin de faire ce que vous voulez, vous pouvez toujours modifier ses paramètres - mais la configuration de OTOH, GRUB 2 est notoirement difficile une fois que vous dépassez des éléments fondamentaux. Pour cette raison, de nombreuses personnes amorçant plusieurs distributions Linux à amorçage double préfèrent disposer d'un chargeur d'amorçage indépendant de la distribution - soit leur propre GRUB, soit quelque chose d'autre. Mon propre gestionnaire de démarrage rEFInd présente plusieurs avantages pour ce type de configuration, tels que l'absence de confiance dans les fichiers de configuration pour détecter les mises à jour du noyau et son indépendance par rapport aux scripts de configuration du système d'exploitation. Cela dit, si vous ne parvenez pas à obtenir efibootmgr
de passer d’un GRUB à un autre, vous risquez également d’avoir du mal à lancer rEFInd (ou tout autre chargeur d’amorçage). De plus, si vous utilisez Secure Boot, vous devrez peut-être enregistrer au moins une clé Secure Boot auprès de votre MOK pour que la fonction rEFInd fonctionne. D'ailleurs, si vous voulez passer à GRUB d'Ubuntu parce que GRUB de Fedora ne lancera pas les noyaux d'Ubuntu, le problème est probablement le démarrage sécurisé; l'ajout de la clé de démarrage sécurisé pour Canonical/Ubuntu devrait permettre de résoudre ce problème.
EDIT:
Boot0001
est l'entrée qui est la plus susceptible de faire ce que vous voulez, elle doit donc être placée au début de votre liste de démarrage. mais il semble que cela ne fonctionne pas pour vous.
Si vous parvenez à laisser Fedora en charge du processus de démarrage, il serait peut-être préférable de le faire, sinon vous risqueriez de créer une cascade de nouveaux problèmes. Certes, supprimer complètement l'entrée de Fedora est risqué, car si vous ne pouvez plus rien faire fonctionner, vous risquez de ne plus pouvoir démarrer.
Vous pouvez essayer en désactivant Secure Boot, en supposant qu’elle est actuellement activée, car cette fonctionnalité peut poser des problèmes, en particulier pour les configurations complexes.