Résumé
J'ai réussi à créer un triple-boot sur mon MBP 2015 avec MacOS (Big Sur), Ubuntu 22.0.1 et Windows 10. Je peux démarrer dans n'importe lequel des 3 avec succès, cependant, le gestionnaire de démarrage n'affiche pas toutes les options de démarrage. Je dois utiliser le menu Grub pour démarrer Windows, ce qui n'est pas ce que je souhaite. Que dois-je faire pour mettre à jour le gestionnaire de démarrage afin qu'il me présente les options de démarrage pour les installations Windows, Ubuntu et MacOS ?
Historique de l'installation
Le disque possède deux installations MacOS sur des partitions différentes - Yosemite et Big Sur - que je peux choisir avec le gestionnaire de démarrage. Il s'agit d'une pratique assez courante. J'ai installé Windows 10 à l'aide de Boot Camp à partir de Big Sur, ce qui semble créer une partition Windows bootloader sur /dev/sda1. À ce stade, le gestionnaire de démarrage (en maintenant la touche option au démarrage) affichait correctement les options MacOS et Windows.
J'ai ensuite créé une partition séparée sur /dev/sda3 pour le chargeur de démarrage Grub d'Ubuntu, ainsi qu'une partition /dev/sda7 pour le système de fichiers principal d'Ubuntu, et j'ai installé Ubuntu en utilisant ces partitions. J'ai spécifiquement choisi /dev/sda3 pour le chargeur de démarrage EFI afin qu'il n'écrase pas le chargeur de démarrage Windows dans /dev/sda1. Tout s'est bien installé, mais j'ai perdu la possibilité de démarrer directement Windows à partir du gestionnaire de démarrage.
Une fois l'installation d'Ubuntu terminée, je m'attendais à ce que le gestionnaire de démarrage affiche les options Windows et Ubuntu en plus de MacOS, mais seules les icônes Windows et MacOS apparaissent. Mais lorsque je sélectionne l'icône Windows dans le gestionnaire de démarrage, le bootloader grub d'Ubuntu s'affiche. Le menu Grub propose des options pour démarrer Ubuntu ou Windows (dont le menu grub indique qu'il s'agit de /dev/sda1). Je peux donc démarrer Windows ou Ubuntu avec succès à l'aide du menu Grub.
Cependant, je veux que le gestionnaire de démarrage affiche des icônes distinctes pour Windows et Ubuntu au démarrage et me permette de les sélectionner à partir de là. J'ai essayé plusieurs choses pour résoudre ce problème sans succès et je suis un peu perplexe sur la façon d'y parvenir.
Quelques exemples de ce que j'ai essayé
Il y a 2 partitions EFI sur le disque, une créée par Boot Camp sur /dev/sda1 pour le bootloader Windows, et une que j'ai créée sur /dev/sda3 pour le bootloader Grub d'Ubuntu. Lorsque j'ai monté la partition /dev/sda3, j'ai remarqué que le répertoire EFI était vide. En suivant les instructions de certains posts passés ici, j'ai copié le contenu du répertoire EFI de la partition /dev/sda1 dans le répertoire EFI de la partition /dev/sda3, ce qui m'a permis de "bénir" la partition dans MacOS en tant que volume amorçable dans le gestionnaire de démarrage. Après cela, le gestionnaire de démarrage a affiché une icône supplémentaire au démarrage, mais comme prévu, les deux icônes sont identiques (icône Windows) et la sélection de l'une ou l'autre d'entre elles me place dans Grub.
J'espérais pouvoir ajuster le contenu des deux partitions EFI de manière à ce qu'elles pointent chacune vers le bootloader correspondant, l'une pour Windows et l'autre pour Grub/Ubuntu. C'est là que je rencontre des difficultés. Je sais que la configuration de démarrage pour Windows est affichée avec d'autres lorsque je lance "efibootmgr -v" sous Linux, mais je ne sais pas comment appliquer cette information pour accomplir ce que je demande.
Partitions et informations sur les disques
Résultat de fdisk -l /dev/sda :
$ sudo fdisk -l /dev/sda
Disk /dev/sda: 465.92 GiB, 500277790720 bytes, 977105060 sectors
Disk model: APPLE SSD SM0512
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: A79A70A1-D180-47E6-BBAC-80365256A8F0
Device Start End Sectors Size Type
/dev/sda1 40 409639 409600 200M EFI System
/dev/sda2 409640 616597135 616187496 293.8G Apple APFS
/dev/sda3 616597504 617129983 532480 260M EFI System
/dev/sda4 617129984 702054399 84924416 40.5G Microsoft basic data
/dev/sda5 702055552 780652767 78597216 37.5G Apple HFS/HFS+
/dev/sda6 780652768 781922303 1269536 619.9M Apple boot
/dev/sda7 781955072 977104895 195149824 93.1G Linux filesystem
Résultat de gdisk -l /dev/sda :
$ sudo gdisk -l /dev/sda
GPT fdisk (gdisk) version 1.0.8
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 977105060 sectors, 465.9 GiB
Model: APPLE SSD SM0512
Sector size (logical/physical): 512/4096 bytes
Disk identifier (GUID): A79A70A1-D180-47E6-BBAC-80365256A8F0
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 977105026
Partitions will be aligned on 8-sector boundaries
Total free space is 34425 sectors (16.8 MiB)
Number Start (sector) End (sector) Size Code Name
1 40 409639 200.0 MiB EF00 EFI System Partition
2 409640 616597135 293.8 GiB AF0A
3 616597504 617129983 260.0 MiB EF00 EFI for GRUB
4 617129984 702054399 40.5 GiB 0700 Basic data partition
5 702055552 780652767 37.5 GiB AF00 Yosemite
6 780652768 781922303 619.9 MiB AB00 Recovery HD
7 781955072 977104895 93.1 GiB 8300
Résultat de efibootmgr -v :
$ sudo efibootmgr -v
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0000,0002,0001,0080
Boot0000* ubuntu HD(1,GPT,a61ea436-09b2-4355-a10e-e89f519653d6,0x28,0x64000)/File(\EFI\ubuntu\shimx64.efi)
Boot0001* Windows Boot Manager HD(1,GPT,a61ea436-09b2-4355-a10e-e89f519653d6,0x28,0x64000)/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.}....................
Boot0002* ubuntu HD(3,GPT,e2387071-5951-4a9f-8d7d-2b113d3ce3b7,0x24c08800,0x82000)/File(\EFI\ubuntu\shimx64.efi)
Boot0080* Mac OS X PciRoot(0x0)/Pci(0x1c,0x5)/Pci(0x0,0x0)/Sata(0,0,0)/HD(2,GPT,11eb72ed-4a8f-4f7d-a8f7-4fca3438adf6,0x64028,0x24c1e788)/VenMedia(be74fcf7-0b7c-49f3-9147-01f4042e6842,cbcfd61e0b162b4aafa0d79e9050dcbb)/File(\A62C572A-E899-4CAC-A2C9-F54103EAD91E\System\Library\CoreServices\boot.efi)
Boot0081* Mac OS X HD(1,MBR,0x901c8f2d,0x800,0xe51f800)
Boot0082* PciRoot(0x0)/Pci(0x1c,0x5)/Pci(0x0,0x0)/Sata(0,0,0)/HD(2,GPT,11eb72ed-4a8f-4f7d-a8f7-4fca3438adf6,0x64028,0x29d24458)/VenMedia(be74fcf7-0b7c-49f3-9147-01f4042e6842,cbcfd61e0b162b4aafa0d79e9050dcbb)/File(\C04D8B5C-49A1-4AD5-9182-459286FF5241\System\Library\CoreServices\boot.efi)