Dual-Boot von OS X oder MacOS mit Linux ohne RefInd

18

Ich denke, der Titel fasst den Inhalt dieses Beitrags recht gut zusammen. Ich möchte ein MacBook Pro 13 'dual-booten, ohne einen Bootloader eines Drittanbieters verwenden zu müssen. Alle Tutorials, die ich gefunden habe, verwenden rEFIt o rEFInd, um Linux erfolgreich zu booten, wenn es installiert wurde, aber ich bin nicht mit der Idee einverstanden, den Standard-Bootloader von Apple auszulöschen, wenn es für mich das Beste ist zu Bootloadern, die ich je gesehen habe.

Gibt es eine Möglichkeit, dies zu erreichen?

Vielen Dank!


quelle

Antworten:

18

Ubuntu installiert grub und andere Dateien in der ersten EFI-Systempartition auf einem Mac-Computer. Normalerweise ist dies die erste Partition auf einem Mac-Computer. Der Prozess, Ubuntu im Startup Manager erscheinen zu lassen, ist ziemlich trivial. Die Schritte sind unten angegeben.

Hinweis: Ab Ubuntu 18 sollte die Installationssoftware automatisch die Dateien erstellen, die zum Starten von Ubuntu auf einem Mac erforderlich sind. Daher sollten Benutzer von Ubuntu 18 und höher in der Lage sein, die Schritte 5 und 6 zu überspringen.

  1. Installieren Sie Ubuntu.
  2. Wenn Sie fertig sind, starten Sie optionden Startup Manager neu und halten Sie die Taste gedrückt. Wählen Sie diese Option, um vom OS X- (oder MacOS-) Volume zu starten.
  3. Öffnen Sie ein Terminal-Anwendungsfenster.

  4. Hängen Sie die EFI-Systempartition ein, indem Sie den folgenden Befehl eingeben.

    diskutil mount disk0s1
    
  5. Erstellen Sie einen Ordner mit dem Namen Bootim Ordner /Volumes/EFI/EFI. Sie können die Finder-Anwendung verwenden oder den folgenden Befehl eingeben.

    mkdir /Volumes/EFI/EFI/Boot
    
  6. Kopieren Sie die Datei grubx64.efiaus dem Ordner /Volumes/EFI/EFI/ubuntuin den Ordner /Volumes/EFI/EFI/Boot. Benennen Sie als Nächstes diese Datei um bootx64.efi. Dieser Schritt kann mithilfe der Finder-Anwendung oder durch Eingabe des folgenden Befehls ausgeführt werden.

    cp /Volumes/EFI/EFI/ubuntu/grubx64.efi /Volumes/EFI/EFI/Boot/bootx64.efi
    
  7. (Optional) Laden Sie eine Sammlung von Symbolen von der SourceForge- Website Mac icns herunter . Öffnen Sie die heruntergeladene Datei mit der Finder-Anwendung mac-icns.dmgund geben Sie den folgenden Befehl ein, um die Ubuntu-Symboldatei os_ubuntu.icnsauf die EFI-Systempartition zu kopieren .

    cp /Volumes/mac-icns/os_ubuntu.icns /Volumes/EFI/.VolumeIcon.icns
    

    Dadurch wird das folgende Ubuntu-Symbol zum Startmenü hinzugefügt.

    os_ubuntu.png

    Hinweis: Wenn Sie fertig sind, können Sie das mac-icnsVolume mit der Finder-Anwendung auswerfen .

  8. Verwenden Sie die Finder-Anwendung oder geben Sie den folgenden Befehl ein, um die EFI-Systempartition mit der Bezeichnung aufzuheben EFI.

    diskutil unmount disk0s1
    
David Anderson
quelle
1
+1 Funktionierte perfekt für mich, um Linux Mint 18 als Dual-Boot mit macOS Sierra auf meinem 2014 Macbook Air zu installieren
setholopolus
Wie funktioniert Schritt 7? Warum sollte das nur das Symbol für die Ubuntu-Partition ändern? Kann ich das Symbol für Macintosh HD auch so ändern, dass im Startmenü ein Sierra-Logo für die Mac-Partition und ein Ubuntu-Logo für die Linux-Partition angezeigt wird?
Arc676
OK, jetzt habe ich das von Ihnen angegebene Ubuntu-Symbol und ein Mac-Symbol /auf meiner Sierra-Partition. Das Mac-Symbol wird für Mac HD und das Ubuntu-Symbol für die andere Partition angezeigt. Ich habe jedoch das Gefühl, dass das Versetzen des von Ihnen angegebenen Symbols nur zum Standardsymbol wird, da das Versetzen des Symbols im Stammverzeichnis der Ubuntu-Partition nicht funktioniert hat. Was wäre, wenn ich ein drittes Betriebssystem installieren würde?
Arc676
1
@ Arc676: Für die Installation eines dritten Betriebssystems ist möglicherweise eine zweite EFI-Partition erforderlich. Die Anzahl der verfügbaren EFI-Partitionen ist unbegrenzt. Ein Beispiel für eine zweite EFI-Partition finden Sie in dieser Antwort .
David Anderson
Diese Antwort hat mich vor dem Wahnsinn bewahrt. Ich habe mindestens 4 Tage lang versucht, ein Problem mit meinem iMac zu lösen. Grundsätzlich hat rEFInd die nativen Anzeigetreiber des iMac beschädigt. Ich bin mir nicht sicher, wie, aber es würde bewirken, dass die Standardauflösung die niedrigste Auflösung ist. Die Lösung für dieses Problem würde die rEFInd löschen. Das erneute Installieren von rEFInd würde die Treiber erneut beschädigen und so weiter und so fort. Vielen Dank an David Anderson.
Jnkrois
14

Beachten Sie, dass weder REFIT noch REFInd den standardmäßigen Apple-Bootloader beschädigen, geschweige denn "auslöschen". Tatsächlich fügen sich sowohl rEFIt als auch rEFInd einfach selbst in den Bootprozess ein und starten dann den Bootloader von Apple selbst.

Grundsätzlich sind rEFIt und rEFInd Bootmanager . Ein Start-Manager zeigt ein Menü oder ein anderes Benutzeroberflächentool an, mit dem Sie das zu startende Betriebssystem auswählen können. Die meisten EFIs, einschließlich der von Apple, verfügen über eigene Boot-Manager. Diese integrierten Boot-Manager sind jedoch in der Regel sehr primitiv. Auf einem Mac starten Sie den integrierten Start-Manager, indem Sie beim Starten des Computers die Wahltaste (oder die Alt-Taste) gedrückt halten (wenn das Startsignal ertönt). Der integrierte Boot-Manager des Mac ist umständlich zu bedienen und in seinen Funktionen eingeschränkt. Ich vermute, das hat Christoph Pfisterer motiviert, rEFIt zu schaffen. Ich habe rEFIt in rEFInd gegabelt, nachdem rEFIt verfallen ist. Ich war mehr von Boot-Problemen auf UEFI-basierten PCs motiviert, aber mit rEFInd konnte ich die Einschränkungen von Apples Boot-Manager umgehen.

Ein Bootloader hingegen lädt einen Kernel in den Speicher und überträgt die Steuerung zu. Ein Bootloader muss nicht direkt mit dem Benutzer interagieren (obwohl dies möglich ist). Weder rEFIt noch rEFInd sind technisch gesehen Bootloader, obwohl der Linux-Kernel eine verschwommene Linie erzeugt, da er eine Funktion (den EFI-Stubloader ) enthält, mit der er als eigener EFI-Bootloader fungieren kann. Einige Bootloader, z. B. der bei Linux-Distributionen beliebte GRUB 2-Bootloader, fungieren sowohl als Bootmanager als auch als Bootloader.

Wenn Sie Ubuntu und OS X (oder macOS, wie es kürzlich umbenannt wurde) auf einem Mac doppelt booten, ist es eine praktische Notwendigkeit, etwas zum Bootprozess hinzuzufügen . Sie können sich darauf verlassen, dass der Boot-Manager von Apple das zu bootende Betriebssystem steuert. In diesem Fall ist kein Tool eines anderen Herstellers beim Booten von OS X beteiligt. Sie benötigen noch etwas (GRUB, rEFInd oder einen anderen Bootloader oder Boot-Manager) ), um einen Linux-Kernel zu starten. Da die meisten dieser Tools bequemer zu verwenden sind als der integrierte Boot-Manager von Apple, lassen die meisten Benutzer sie in der Boot-Reihenfolge festgelegt, sodass sie vor dem OS X-Boot-Manager aufgerufen werden.

Wenn Sie rEFInd einfach nicht mögen, können Sie sicher darauf verzichten. Sie können sich auf die Boot-Manager-Funktionen von GRUB 2 verlassen oder ein anderes Tool wie gummiboot / systemd-boot installieren. Theoretisch, wenn Sie Ubuntu im EFI-Modus installieren ,Es sollte GRUB 2 so installieren, dass es zum Standard-Boot-Manager wird, und es sollte Optionen zum Booten von Ubuntu und OS X bieten. In der Praxis bin ich mir nicht sicher, ob dies funktionieren wird - Apple macht alles ein wenig anders. und so wenige Leute tun es auf diese Weise, dass ich nicht versprechen kann, dass es funktionieren würde. Sie können es jedoch versuchen und anschließend alle Probleme beheben, auf die Sie im Nachhinein stoßen. Ich empfehle jedoch, vor dem Start mehr über das EFI-Booten zu lernen, damit Sie keine grundlegenden Fehler wie das Booten des Installationsprogramms im BIOS-Modus oder das falsche Einrichten Ihrer Partitionen machen. Sie könnten mit diesen Seiten beginnen:

Wenn Sie sich für die Verwendung von rEFInd entscheiden, überprüfen Sie das Datum der Anweisungen, die Sie befolgen. Einige sehr alte Seiten sind immer noch da draußen und behandeln normalerweise keine neuen Probleme wie den Systemintegritätsschutz (SIP) . oder sie beschreiben die Verwendung des aufgegebenen rEFIt anstelle des neueren rEFInd. (Obwohl rEFIt weiterhin für neuere OS X-Versionen geeignet ist, müssen Sie möglicherweise durch nicht dokumentierte Rahmen springen.)

Rod Smith
quelle