Dual-/Triple-EFI-Boot von verschiedenen Laufwerken ohne Umweg über das BIOS?

Dual-/Triple-EFI-Boot von verschiedenen Laufwerken ohne Umweg über das BIOS?

Ich habe eine neue Maschine mit zwei 1 TB NVMe-Laufwerken. Mein geplantes Setup ist ein Triple-Boot von

  • MacOS (Opencore Hackintosh)
  • nixos
  • Windows 10

Ich habe Nixos auf der Hälfte einer Festplatte installiert und MacOS auf der anderen Festplatte. Die Idee ist, Windows später auf der unbenutzten Hälfte der Festplatte zu installieren …

Mein Problem besteht derzeit darin, dass ich diese beiden Installationen unabhängig voneinander mit unterschiedlichen EFI-Partitionen durchgeführt habe:

Disk /dev/nvme0n1: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: Samsung SSD 970 EVO Plus 1TB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: B82F9B41-F608-4292-80D2-0FFF780579C2

Device          Start        End    Sectors   Size Type
/dev/nvme0n1p1     40     409639     409600   200M EFI System
/dev/nvme0n1p2 409640 1953525127 1953115488 931.3G unknown


Disk /dev/nvme1n1: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: Samsung SSD 970 EVO Plus 1TB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: A926C80C-3BBF-4B3A-B6A9-3149DEFC5E61

Device              Start        End    Sectors   Size Type
/dev/nvme1n1p1    1048576 1031798783 1030750208 491.5G Linux filesystem
/dev/nvme1n1p2 1031798784 1048575999   16777216     8G Linux swap
/dev/nvme1n1p3       2048    1048575    1046528   511M EFI System

Das erste ist MacOS und das zweite Nixos.

Das Grub, das ich mit der Nixos-Installation erhalten habe, kennt MacOS nicht und Opencore kennt das Nixos-Grub ebenfalls nicht. Daher muss ich jedes Mal die BIOS-Einstellungen durchgehen, um auszuwählen, welches physische Laufwerk gebootet werden soll. Dass es sich um dasselbe Modell handelt, hilft dabei nicht :)

Bildbeschreibung hier eingeben

Gibt es eine einfache Möglichkeit, entweder Opencore in Grub einzufügen oder umgekehrt? Bonuspunkte, ich würde mir das Gleiche auch für Windows 10 wünschen …

Antwort1

Ich habe in meiner Nixos-Konfiguration einen zusätzlichen manuellen Eintrag zu Grub hinzugefügt:

# Use the systemd-boot EFI boot loader.
  boot.loader = {
    #systemd-boot.enable = true;
    efi = {
      canTouchEfiVariables = true;
      efiSysMountPoint = "/boot";
    };
    grub = {
      devices = [ "nodev" ];
      efiSupport = true;
      enable = true;
      extraEntries = ''
        menuentry "Hackintosh BOOTx64" {
          insmod part_gpt
          insmod fat
          insmod search_fs_uuid
          insmod chain
          search --fs-uuid --set=root $UUID
          chainloader /EFI/BOOT/BOOTx64.efi
        }
      '';
      version = 2;
      #useOSProber = true;
    };
  };

wobei $UUID die UUID der MacOs EFI-Partition ist sudo blkid.

Jetzt habe ich also Grub2 als meinen primären Boot-Server und kann von dort aus in OpenCore booten.

verwandte Informationen