Bootloader werden in UEFI nicht angezeigt

1

Ich verwende ein Thinkpad T440p mit einer einzelnen Festplatte. Es ist auf den Nur-UEFI-Modus eingestellt (Secure Boot deaktiviert). Jedes Mal, wenn ich ein Betriebssystem installierte, wurden entsprechende Einträge in UEFI angezeigt, um diese Betriebssysteme zu starten.

Dieses Mal, als ich Debian 9 und Windows 10 installierte, wurden keine Einträge angezeigt. Ich kann beide Systeme immer noch booten, indem ich grub nach /EFI/Boot/bootx64.efi auf der EFI-Partition kopiere und UEFI dann anweise, die Festplatte zu booten.

Wie kann ich UEFI dazu bringen, Einträge für /EFI/debian/grubx64.efi und /EFI/Microsoft/Boot/bootmgfw.efi erneut anzuzeigen?

Das Zurücksetzen von UEFI hat nichts geändert. Wenn Sie efibootmgr unter Linux verwenden, um die Einträge manuell hinzuzufügen, werden Einträge erstellt, die in efibootmgr (als aktiv markiert) während eines Neustarts angezeigt werden. Sie werden jedoch nicht in der tatsächlichen UEFI angezeigt und können daher nicht verwendet werden.

Was ist der Mechaniker dahinter? Soll ein Betriebssysteminstallateur einen Eintrag zu UEFI hinzufügen oder soll UEFI automatisch neue .efi-Dateien in der EFI-Parition finden?

ralftoringo
quelle

Antworten:

2

Um Ihre letzte Frage zuerst zu beantworten: Wenn ein Betriebssystem auf einem EFI-basierten Computer installiert wird, muss es seinen Bootloader beim EFI registrieren, der einen Zeiger auf diesen Bootloader im NVRAM speichert. Linux-Distributionen verwenden das efibootmgrTool hierfür, andere Betriebssysteme verfügen jedoch über andere Tools mit ähnlichen Funktionen. (Microsoft hat das bcdeditTool beispielsweise erweitert, um den Bootloader beim EFI zu registrieren.) Mindestens ein Betriebssystem (FreeBSD) tut dies jedoch nicht. Es speichert seinen Bootloader mit dem Fallback-Dateinamen ( EFI/BOOT/bootx64.efi), was meiner Meinung nach eine schlechte Wahl ist - aber wenn sie kein Äquivalent zu habenefibootmgr, könnte es ihre einzige Option sein. Ich kenne keine EFIs, die aktiv nach Bootloadern mit beliebigen Namen suchen, obwohl sie mit dem Fallback-Dateinamen booten, wenn nichts anderes vorhanden ist. Einige behandeln den Microsoft-Bootmanager ( EFI/Microsoft/Boot/bootmgfw.efi) auch als Ersatzdateinamen.

Es hört sich so an, als ob Ihr EFI und seine NVRAM-Einträge durcheinander geraten sind. Normalerweise würde ich empfehlen, die Firmware auf die Standardeinstellungen zurückzusetzen, in der Hoffnung, dass durch diese Aktion das Problem behoben wird, aber Sie haben dies bereits getan. Vielleicht sollten Sie überflüssige Einträge mit efibootmgroder ähnlichem entfernen und dann versuchen, den NVRAM zurückzusetzen. ( Entfernen Sie jedoch nicht alles. Ich habe gesehen, dass sich EFIs nach dem Entfernen aller Starteinträge sehr seltsam verhalten. Betriebssystemeinträge, wie für Debian und Windows, sollten sicher entfernt werden können, aber Einträge, die eindeutig hardwarespezifisch sind, wie z Dies bezieht sich auf Festplattenmodelle oder PXE-Boot-Optionen.) Wenn Sie diese Einträge entfernen, kann der Computer möglicherweise nicht mehr booten, sodass mein rEFInd-Boot-Manager verfügbar istauf einem USB-Stick oder einer CD-R kann hilfreich sein; Sie sollten in der Lage sein, von dort zu booten und dann REFInd zu aktivieren, um jedes erkannte Betriebssystem zu booten, das Sie dann verwenden können, um funktionierende Boot-Einträge neu zu erstellen.

Einige zusätzliche Ansätze umfassen:

  • Entfernen Sie alle Festplatten und starten Sie den Computer. Dies kann "in die Hose treten" und dazu führen, dass das Boot-Entry-Problem behoben wird.
  • Aktualisieren Sie Ihre Firmware. Sogar ein "Update" auf genau dieselbe Version könnte helfen (obwohl das Update-Dienstprogramm möglicherweise ein Update ohne Upgrade ablehnt). Ein Update behebt möglicherweise einen Fehler, der das Problem verursacht. Ebenso wichtig ist jedoch, dass einige Variablen oder der Speicherplatz zurückgesetzt werden, die selbst beim Zurücksetzen auf die Standardeinstellungen nicht betroffen sind.

Dies sind beides Maßnahmen der Verzweiflung mit einer geringen Erfolgschance, also machen Sie sich keine Hoffnungen. Trotzdem sind beide einen Versuch wert, IMHO. Bereiten Sie sich auf eine rEFInd-Notfalldiskette vor, da beide möglicherweise alle funktionierenden Starteinträge löschen, die Sie bereits haben.

Wenn Ihr System vollständig ausgelastet ist und nicht repariert werden kann, können Sie versuchen, den von Ihnen bevorzugten Boot-Manager auf der Festplatte unter zu platzieren EFI/BOOT/bootx64.efiund ihn so zu konfigurieren, dass er Startoptionen für Ihre anderen Betriebssysteme bietet. Es gibt Computer mit stark defekten EFIs, die diesen Ansatz erfordern, auch wenn sie brandneu sind, und es würde mich nicht überraschen, EFIs zu kennen, die defekt sein können, um diese Problemumgehung zu erfordern, obwohl sie in der Vergangenheit einwandfrei funktioniert haben.

Rod Smith
quelle
1
Danke für die Erklärung. Es scheint, dass mein EFI unwiederbringlich durcheinander geraten ist und keine neuen Einträge mehr zulässt. Ich habe GRUB einfach in den Fallback-Ordner verschoben, um meine Betriebssysteme zu laden.
Ralftoringo