Ich habe ein kleines Problem mit rEFInd und konnte nichts Bestimmtes finden.
Ich habe Ubuntu 14.04 für Dual Boot mit OS X Yosemite erfolgreich auf meinem MacBook Pro 3.1 mit rEFInd installiert, aber jetzt, nachdem ich Ubuntu gestartet habe, wird das Menü rEFInd nach einem Neustart nicht angezeigt. Es geht einfach direkt ins Maden. Nach dem erneuten Booten in OS X (mit der Optionstaste beim Start) wird manchmal rEFInd angezeigt, manchmal nicht. Es konnte nicht herausgefunden werden, wie es ausgelöst wird.
Gibt es eine Möglichkeit, um sicherzustellen, dass rEFInd zuerst angezeigt wird, unabhängig davon, welches Betriebssystem ich zuvor gestartet habe?
Bearbeiten
Verwenden efibootmgr -v
gibt mir:
BootCurrent: 0001
Timeout: 5 seconds
BootOrder: 0001,0080,0000
Boot0000* opensuse-secureboot HD(4,1962b000,4e800,11f33185-0ff8-493d-86bd-b9fee568adb8)File(\EFI\opensuse\shim.efi)
Boot0001* ubuntu HD(1,28,64000,7e798e0a-82c3-4719-95ed-d79675efd190)File(\EFI\ubuntu\shimx64.efi)
Boot0080* Mac OS X HD(1,28,64000,7e798e0a-82c3-4719-95ed-d79675efd190)File(\EFI\refind\refind_x64.efi)
Boot0081* Mac OS X ACPI(a0341d0,0)PCI(1f,2)03120a00000000000000HD(2,64028,1d02ba00,0b1ce04a-50b7-40b5-94f0-1a255d748d15)
Boot0082* ACPI(a0341d0,0)PCI(1f,2)03120a00000000000000HD(2,64028,19490d60,20cc89c9-1320-4d70-b8bb-fffdf9900374)
BootFFFF* ACPI(a0341d0,0)PCI(1f,2)03120a00000000000000HD(2,64028,19490d60,20cc89c9-1320-4d70-b8bb-fffdf9900374)File(\System\Library\CoreServices\boot.efi)
Wenn ich den NextBoot mit der -n
Option -00 auf 0080 setze, wird nach dem Neustart rEFInd angezeigt. FFFF bringt mich direkt in OSX. 0081 scheint zu scheitern.
Danke für die Hilfe!
Antworten:
Betriebssysteme setzen manchmal das Standard-Bootprogramm zurück, insbesondere wenn sie ihre Standard-Bootloader aktualisieren. Es gibt wirklich keine Möglichkeit, dies zu verhindern. Sie müssen also einfach wissen, wie Sie das Problem beheben können, wenn es auftritt. Unter Linux erfolgt dies mithilfe des
efibootmgr
Programms. In OS X erfolgt dies überbless
. Sehen Sie hier für weitere Informationenefibootmgr
.Wenn dieses Jonglieren bei jedem Neustart auftritt, stimmt etwas nicht. Wenn Ubuntu GRUB bei jedem Neustart als Standard zurücksetzt, würde ich es persönlich entfernen - aber ich bin kein Fan von GRUB (genug, so dass ich rEFIt gabelte, um rEFInd zu machen, anstatt mich mit GRUB zu befassen). Ich nehme an, Sie könnten auch
efibootmgr
in einem Shutdown-Skript einen Anruf tätigen, aber das birgt die Gefahr , dass Sie von der Realität getrennt werden und Probleme verursachen. Daher würde ich dies nur ungern tun.BEARBEITEN:
Ja, es ist angemessen , die
BootOrder
Variable (über die-o
Option aufefibootmgr
) zu ändern . Sie können den OpenSUSE-Eintrag löschen mit:Möglicherweise sind OpenSUSE-Dateien installiert, die Sie löschen können
rm
- wahrscheinlichsudo rm -r /boot/efi/EFI/opensuse
von Ubuntu. (Diese Dateien sollten an sich keinen Schaden anrichten, können jedoch verwirrend sein oder in Zukunft versehentlich erneut aktiviert werden.) Sie können Ubuntu GRUB auf ähnliche Weise entfernen, obwohl es möglicherweise neu installiert wird, wenn Ubuntu verwendet wird aktualisiert es in Zukunft. Es kann auch sinnvoll sein, es als Backup-Methode zum Booten beizubehalten.Wenn Sie Ubuntus GRUB installiert lassen, es aber nicht im Menü von rEFInd sehen möchten, können Sie den GRUB-Eintrag mit
dont_scan_dirs
oderdont_scan_files
inrefind.conf
(wahrscheinlich/boot/efi/EFI/refind/refind.conf
von Ubuntu) ausblenden.quelle
ro quiet splash nomodeset vt.handoff=7
, werden die Optionen wie in /boot/refind_linux.conf angezeigt, die mit denen in GRUB identisch sind.root={something}
Spezifikation inrefind_linux.conf
? Wenn nicht, muss es hinzugefügt werden. Sie sollten in der Lage sein, dies zum Laufen zu bringen, indem Sie dasmkrlconf
mit rEFInd gelieferte Skript ausführen, aber Sie müssen wahrscheinlich die--force
Option wie in hinzufügensudo mkrlconf --force
(aber möglicherweise mit dem vollständigen Pfad zumkrlconf
). Wenn das dieroot=
Option immer noch auslässt , zeigen Sie mir bitte, was passiert, wenn Sie tippencat /proc/cmdline
.refind-linux.conf
, was ich mit Ihremmkrlconf
-script gemacht habe, hat drei Einträge mit einerroot=
-spezifikation (siehe hier ). In GRUB2 musste ich die Option hinzufügennomodeset
, um meine nVidia-GPU zum Laufen zu bringen.cat /proc/comdline
gibt mir :BOOT_IMAGE=/boot/vmlinuz-3.19.0-32-generic root=UUID=1b9ece72-754f-4f4b-85c0-5b5ed6fc89e1 ro quiet splash nomodeset vt.handoff=7
. Auch obwohl der Startvorgang visuell im rEFInd-Boot-Bildschirm hängt, scheint das System zu starten, zum Beispiel wird mein Fan-Control-Daemon gestartet und die Lüfter werden langsam.Dies ist mir passiert und ich habe es in Ubuntu wie folgt behoben (dies ist spezifisch für Ihren Fall, wie es Ihr Ubuntu-Boot ist
Boot0001*
):Wenn Sie erneut
sudo efibootmgr
eingeben, sollte Ihre Startreihenfolge jetzt seinBootOrder: 0080,0001
. Dies garantiert, dass der Mac zuerst gestartet wird. Da rEFInd auf dem Mac installiert wurde, sollte es zuerst gestartet werden.quelle