Was kann ich tun, um diesen Fehler bei grub-efi zu beheben?

Was kann ich tun, um diesen Fehler bei grub-efi zu beheben?

Ich habe ein Dual-Boot-System mit Windows 10 und Ubuntu 16.04 eingerichtet. Beim Einschalten meines PCs wird Grub korrekt angezeigt, Windows und Ubuntu werden erkannt, da gibt es keine Probleme. Jedes Mal, wenn es ein Update gibt oder ich etwas installieren muss, erhalte ich diesen Fehler:

Errors were encountered while processing:
 grub-efi-amd64-signed
 shim-signed
Setting up shim-signed (1.12+0.8-0ubuntu2) ...
Installing for x86_64-efi platform.
grub-install: errore: cannot find EFI directory.
dpkg: error processing package shim-signed (--configure):
 subprocess installed post-installation script returned error exit status 1
Setting up grub-efi-amd64-signed (1.66+2.02~beta2-36ubuntu3) ...
grub-install: errore: /usr/lib/grub/i386-pc/modinfo.sh doesn't exist. Please specify --target or --directory.
dpkg: error processing package grub-efi-amd64-signed (--configure):
 subprocess installed post-installation script returned error exit status 1

Kann ich es einfach ignorieren oder kann ich etwas tun, um es zu beheben?

Antwort1

Versuchen

sudo apt-get purge grub\*
sudo apt-get install grub-efi
sudo apt-get autoremove
sudo update-grub

reparieren.

Antwort2

Falls jemand eine Multiboot-USB-Festplatte einrichten möchte, die sowohl MBR als auch Grub unterstützt:

Wenn Ihr aktuelles System EFI ist, fehlt Ihnen Folgendes:

sudo apt install grub-pc-bin

Wenn Ihr aktuelles System MBR ist, fehlt Ihnen Folgendes:

sudo apt install grub-efi-amd64-bin
# You may also need grub-efi-amd64-signed

Antwort3

Der Verweis auf /usr/lib/grub/i386-pc/modinfo.shweist auf eine GRUB-Installation im BIOS-Modus hin – genauer gesagt, der i386-pcAbschnitt dieses Pfads identifiziert die BIOS-Modus-Version von GRUB. (Für eine EFI-Modus-Installation auf AMD64/x86-64 ist der entsprechende Pfad /boot/grub/x86_64-efi/modinfo.sh.) Andererseits weisen die Paketnamen eindeutig auf eine GRUB-Installation im EFI-Modus hin. Die beiden sollten nicht vermischt werden, aber irgendwie ist das in Ihrem Fall passiert. Vielleicht haben Sie noch eine übriggebliebene GRUB-Konfigurationsdatei von einer früheren BIOS-Modus-Installation. In diesem Fall sollte das Aufspüren und Aktualisieren dieser Datei das Problem beheben. VielleichtBoot-Reparaturkönnte das Problem automatisch beheben. Beachten Sie jedoch, dass bei einem Reparaturversuch das Risiko besteht, dass das Problem noch schlimmer wird, da Ihr System dadurch nicht mehr gestartet werden kann. Ich rate daher zu äußerster Vorsicht!

Wenn Sie das Problem nicht einfach beheben können, können Sie GRUB durch etwas anderes ersetzen - es stehen mehrere Alternativen zur Verfügung, wie beschrieben unterdiese meine Webseite.GRUB 2 ist deram meistenEs ist schwierig, den Bootloader zu optimieren, wenn er einmal „aus den Fugen gerät“, wie bei Ihnen, weshalb ein Austausch eine gute Option sein kann. Mein eigenerrEFInd Bootmanagerist wahrscheinlich einfach zu installieren, mit der Einschränkung, dass es einen Ubuntu 16.04-Fehler gibt, der die Installation vom PPA mit aktiviertem Secure Boot erschwert. (Das wird in der Dokumentation behandelt.) Beachten Sie auch, dass die einfache Installation eines neuen Pakets Ihr Problem nicht löst; Sie müssenDeinstallierendas GRUB-Paket, das Ihnen dabei Schwierigkeiten bereitet. Ich behandele dieses Thema speziellHier,da es nicht so einfach ist, wie Sie vielleicht denken. (Ubuntu versucht immer wieder, GRUB neu zu installieren, wenn Sie es entfernen.)

Antwort4

versuchen:

sudo apt-get -f install

Schritt 1: Starten Sie die Shim-Deinstallation

dann: dieser Terminalbefehl entfernt das shim-signierte Archiv

Schritt 2: Shim deinstallieren

nachher: ​​mit erfolgreich entferntem Shim-Archiv

Schritt 3: Unterlegscheibe entfernt

endlich: zumindest die Ubuntu-Software-Updates sollten wieder funktionieren, wenn alles gut geht (wie in meinem Fall)

Schritt 4: Eingabeaufforderung für Systemaktualisierungen

verwandte Informationen