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

15

Ich habe ein Dual-Boot-System-Setup mit Windows 10 und Ubuntu 16.04. Wenn ich meinen PC einschalte, 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 folgende Fehlermeldung:

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?

BressanFranco
quelle
Ist das ein UEFI-System? Mounten Ihre / etc / fstab die EFI-Partition unter / boot / efi? Enthält / boot / efi ein Verzeichnis EFI?
Ubfan1
Ja, es ist ein UEFI-System, die / boot / efi enthält das EFI-Verzeichnis, verstehe das / etc / fstab-Bit nicht
BressanFranco
Es sieht so aus, als ob ein Update irgendwann unterbrochen wurde, bevor die Konfiguration der Pakete vollständig abgeschlossen ist. Versuchen Sie es mit dpkg --configure -a
MttJocy
@MttJocy versuchte es, gibt mir den gleichen Fehler mit Paket grub-efi-amd64-unterzeichnet und Shim-unterzeichnet
BressanFranco

Antworten:

4

Der Verweis auf /usr/lib/grub/i386-pc/modinfo.shgibt eine GRUB-Installation im BIOS-Modus an. Insbesondere gibt der i386-pcAbschnitt dieses Pfads die Version von GRUB im BIOS-Modus an. (Bei einer Installation im EFI-Modus unter AMD64 / x86-64 lautet der entsprechende Pfad /boot/grub/x86_64-efi/modinfo.sh.) OTOH, die Paketnamen weisen eindeutig auf eine GRUB-Installation im EFI-Modus hin. Die beiden sollten nicht gemischt werden, aber irgendwie ist das in deinem Fall passiert. Möglicherweise haben Sie eine übrig gebliebene GRUB-Konfigurationsdatei aus einer früheren Installation im BIOS-Modus. In diesem Fall sollte das Problem behoben werden, indem Sie diese nachverfolgen und aktualisieren. Vielleicht könnte Boot Repair das Problem automatisch beheben. Beachten Sie jedoch, dass bei einem Reparaturversuch die Gefahr besteht, dass sich die Situation verschlechtert, indem das System nicht mehr gestartet werden kann. Ich rate daher, mit äußerster Vorsicht vorzugehen!

Wenn Sie es nicht einfach beheben können, können Sie GRUB durch etwas anderes ersetzen. Es gibt verschiedene Alternativen, wie auf meiner Webseite beschrieben . 2 GRABEN sind die am meisten schwierig Bootloader zu optimieren , sobald es geht „aus den Schienen“ , wie Sie hat, weshalb ersetzt es kann eine gute Option sein. Mein eigener rEFInd-Boot-Manager ist wahrscheinlich einfach zu installieren, mit der Einschränkung, dass es einen Ubuntu 16.04-Fehler gibt, der die Installation von der PPA mit aktivem Secure Boot erschwert. (Dies wird in der Dokumentation behandelt.) Beachten Sie auch, dass die Installation eines neuen Pakets Ihr Problem nicht löst. Sie müssen das GRUB-Paket deinstallieren , das Ihnen dies erschwert. Ich behandele dieses Thema speziell hier,da es nicht so einfach ist wie man denkt. (Ubuntu versucht weiterhin, GRUB erneut zu installieren, wenn Sie es entfernen.)

Rod Smith
quelle
Boot-Repair in erweiterten Optionen hat eine vollständige Deinstallation / Neuinstallation von Grub. Das kann das Konfigurationsproblem beheben. Stellen Sie sicher, dass Sie im UEFI-Modus booten, wenn Sie UEFI installieren.
Oldfred
@oldfred wie stelle ich sicher, dass ich im UEFI-Modus boote? Wenn es eine BIOS-Einstellung ist, sollte es (eigentlich bin ich definitiv sicher, dass es aktiviert ist) bereits
BressanFranco
Sie wählen aus dem UEFI-Startmenü. Normalerweise wird das Flash-Laufwerk zweimal angezeigt. Einmal als UEFI: Flashdrive und wieder nur als Flashdrive was dann das BIOS bootet. Sie können auch feststellen, ob es sich bei dem Grub-Menü um UEFI handelt. Wenn Sie den Eingabehilfen-Bildschirm (kleine Symbole unten) erhalten, handelt es sich um das BIOS. Shows installieren mit Screenshots. Sowohl der lila BIOS- Eingabehilfen-
oldfred
habe die boot-repair live disc ausprobiert und die autoreparatur durchgeführt, jetzt scheint alles in ordnung zu sein und es werden nicht mehr die gleichen fehler wie zuvor angezeigt. update-grub hat die windows partition neu hinzugefügt. Alles scheint in Ordnung
BressanFranco
40

Versuchen

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

reparieren.

John
quelle
behebt
Diese Befehle arbeiteten wie ein Zauber Xubuntu 16.04
guyfromfl
4
Ist das sicher zu tun?
Pithikos
1
Es ist in beide Richtungen sicher. Sie können entweder die obigen Befehle oder die Boot-Repair-Live-CD verwenden.
John
1
Ich habe Ubuntu 17.04 auf 18.04 upgegradet und bekam dann den Fehler: Errors were encountered while processing: grub-efi-amd64 grub-efi-amd64-signed shim-signed E: Sub-process /usr/bin/dpkg returned an error code nachher sudo apt upgrade. Ihre Lösung hat auch bei mir funktioniert. Vielen Dank.
Mario gehen
4

Für den Fall, dass jemand ein Multiboot-USB-Laufwerk einrichten möchte, das sowohl für mbr als auch für grub geeignet ist:

Wenn Ihr aktuelles System EFI ist, fehlt Folgendes:

sudo apt install grub-pc-bin

Wenn Ihr aktuelles System MBR ist, wird Ihnen Folgendes fehlen:

sudo apt install grub-efi-amd64-bin
# You may also need grub-efi-amd64-signed
Mr. B
quelle
1

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 dem Shim-Archiv erfolgreich entfernt

Schritt 3: Distanzscheibe entfernt

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

Schritt 4: Eingabeaufforderung für Systemaktualisierungen

Freddy
quelle