Co mogę zrobić, aby naprawić ten błąd na grub-efi?


15

Mam konfigurację systemu podwójnego rozruchu z systemem Windows 10 i Ubuntu 16.04, po włączeniu poprawnie programów grub PC, Windows i Ubuntu są rozpoznawane, nie ma problemów. Za każdym razem, gdy pojawia się aktualizacja lub muszę coś zainstalować, ciągle pojawia się ten błąd:

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

Czy mogę to zignorować lub zrobić coś, co mogę zrobić, aby to naprawić?


Czy to jest system UEFI? Czy twój / etc / fstab montuje partycję EFI w / boot / efi? Czy / boot / efi zawiera katalog EFI?
ubfan1

Tak, jest to system UEFI, katalog / boot / efi zawiera katalog EFI, nie rozumiem bitu / etc / fstab
BressanFranco 27.04.16

Wygląda na to, że aktualizacja mogła zostać przerwana na jakiś czas przed całkowitym zakończeniem konfigurowania pakietów. Spróbuj dpkg --configure -a
MttJocy 27.04.16

@MttJocy wypróbował to, daje mi ten sam błąd z pakietem grub-efi-amd64-podpisany i
shim

Odpowiedzi:


4

Odniesienie do /usr/lib/grub/i386-pc/modinfo.shwskazuje instalację GRUB w trybie BIOS - w szczególności i386-pcsekcja tej ścieżki identyfikuje wersję GRUB w trybie BIOS. (W przypadku instalacji w trybie EFI na AMD64 / x86-64 równoważna ścieżka to /boot/grub/x86_64-efi/modinfo.sh.) OTOH, nazwy pakietów wyraźnie wskazują instalację GRUB w trybie EFI. Obie nie powinny być mieszane, ale jakoś tak się stało w twoim przypadku. Być może masz resztkowy plik konfiguracyjny GRUB z poprzedniej instalacji w trybie BIOS, w którym to przypadku śledzenie go i aktualizowanie powinno rozwiązać problem. Być może Boot Repair mógłby rozwiązać problem automatycznie. Należy jednak pamiętać, że próba naprawy grozi pogorszeniem sytuacji, uniemożliwiając uruchomienie systemu. Dlatego radzę postępować z najwyższą ostrożnością!

Jeśli nie możesz tego łatwo naprawić, możesz zastanowić się nad zastąpieniem GRUB-a czymś innym - dostępnych jest kilka alternatyw, jak opisano na mojej stronie internetowej. GRUB 2 jest najbardziej trudne ładujący do dostrojenia raz idzie „off szynach”, jak twój ma, dlatego zastąpienie może być to opcja dobra. Mój własny menedżer rozruchu rEFInd najprawdopodobniej będzie łatwy do zainstalowania, z zastrzeżeniem, że istnieje błąd Ubuntu 16.04, który komplikuje instalację z PPA przy aktywnym Bezpiecznym rozruchu. (Jest to opisane w dokumentacji.) Należy również pamiętać, że samo zainstalowanie nowego pakietu nie rozwiąże problemu; musisz odinstalować pakiet GRUB, który sprawia ci trudności. Omawiam ten temat właśnie tutaj,ponieważ nie jest to tak łatwe, jak mogłoby się wydawać. (Ubuntu próbuje ponownie zainstalować GRUB, jeśli go usuniesz).


Boot-Repair w zaawansowanych opcjach ma pełne odinstalowanie / ponowne zainstalowanie grub. To może rozwiązać problem z konfiguracją. Pamiętaj, aby uruchomić w trybie UEFI, jeśli UEFI zostanie zainstalowany.
oldfred 27.04.16

@oldfred Jak mogę się upewnić, że uruchomię się w trybie UEFI? jeśli jest to ustawienie bios, powinno (jest to zdecydowanie pewne, że tak jest) już być włączone
BressanFranco 27.04.16

Wybierz z menu rozruchowego UEFI. Zwykle dysk flash jest pokazywany dwukrotnie. Raz jako UEFI: flashdrive i ponownie tak samo jak flashdrive, który następnie uruchamia BIOS. Możesz także powiedzieć, że jeśli masz menu grub, jest to UEFI, jeśli pojawi się ekran dostępności (małe ikony u dołu), to BIOS. Pokazuje instalację ze zrzutami ekranu. Zarówno fioletowy ekran dostępności BIOS, jak i czarny menu UEFI grub menu help.ubuntu.com/community/UEFI
oldfred 27.04.2016

wypróbowałem dysk na żywo do naprawy rozruchu i wykonałem automatyczną naprawę, wszystko wydaje się być teraz dobre, nie otrzymuję takich samych błędów jak poprzednio, update-grub ponownie dodał partycję Windows. Wszystko wydaje się w porządku
BressanFranco 27.04.16

40

Próbować

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

naprawić.


naprawiono go za pomocą dysku na żywo do naprawy rozruchu
BressanFranco

Te polecenia działały jak urok Xubuntu 16.04
guyfromfl

4
Czy to bezpieczne?
Pithikos,

1
Jest bezpieczny w obie strony. Możesz użyć powyższych poleceń lub dysku Live Boot Repair.
Jan

1
Zaktualizowałem Ubuntu 17.04 do 18.04, a następnie pojawił się błąd: Errors were encountered while processing: grub-efi-amd64 grub-efi-amd64-signed shim-signed E: Sub-process /usr/bin/dpkg returned an error code po wykonaniu sudo apt upgrade. Twoje rozwiązanie też ze mną działało. Dzięki.
Mario go

4

W przypadku, gdy ktoś zastanawia się nad skonfigurowaniem dysku USB z wieloma uruchomieniami do obsługi zarówno mbr, jak i grub:

Jeśli Twoim bieżącym systemem jest EFI, będziesz tego brakować:

sudo apt install grub-pc-bin

Jeśli Twoim bieżącym systemem jest MBR, będziesz tego brakować:

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

1

próbować:

sudo apt-get -f install

Krok 1: Rozpocznij odinstalowywanie shim

następnie: to polecenie terminalu usunie archiwum podpisane shim

krok 2: odinstaluj shim

po: po pomyślnym usunięciu archiwum shim

krok 3: podkładka usunięta

wreszcie: przynajmniej aktualizacje oprogramowania Ubuntu powinny zacząć ponownie działać, jeśli wszystko pójdzie dobrze (jak w moim przypadku)

krok 4: Monit o aktualizację systemu

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.