
Ich weiß, dass das ein recht häufiges Problem ist, aber ich habe eine Reihe gängiger Antworten (unten aufgeführt) ohne Erfolg ausprobiert.
Grundlegende Einrichtung: Ich richte einen Dual-Boot mit Fedora 31 und Ubuntu 18.04 ein, jeweils mit einer separaten verschlüsselten / und unverschlüsselten /boot-Partition und einer einzelnen /boot/efi-Partition, also insgesamt 5. Habe zuerst Fedora und dann Ubuntu installiert. Alles lief reibungslos und ich kann beide über das EFI-Bootmenü booten. Ich möchte jedoch die EFI-Bootreihenfolge sperren und die Startauswahl in Grub treffen, und die aktuellen Ubuntu-Grub-Optionen haben Fedora verpasst. Also habe ich Fedora gebootet und versucht, grub2-install /dev/sda
den MBR auf Fedoras Grub-Konfiguration zurückzusetzen und Ubuntu hinzuzufügen. Stattdessen bekam ich das ach so übliche grub2-install: error: /usr/lib/grub/x86_64-efi/modinfo.sh doesn't exist. Please specify --target or --directory
.
- ich habe es versuchtErweiterung des Kommandoszu
grub2-install --target=x86_64-efi --efi-directory=/boot/efi --bootfloader-id=grub2
ohne Änderung. - Ich habe auch versucht
dnf reinstall grub2-efi shim grub2-tools
- UndInstallieren
grub2-efi-modules
Trotz alledem finde ich in meinem /usr/lib/grub
Verzeichnis nur arm64-efi
und, i386-pc
aber kein x86_64-efi
. Ich bin mit diesem Bootmgr-Zeug nicht ganz vertraut (meine Erfahrung geht so weit, diese Probleme bei jeder Neuinstallation so lange zu lösen, bis sie funktionieren).
Hat jemand eine Vermutung, wo das Problem liegt, oder einen anderen Ort, an dem man nach Antworten suchen kann?
Antwort1
Zuerst habe ich „dnf provides“ ausgeführt, um das richtige Paket zu finden:
dnf bietet /usr/lib/grub/x86_64-efi
Dann habe ich das richtige Paket mit seinem vollständigen Namen installiert:
dnf installiere grub2-efi-x64-modules-1:2.06~rc1-2.fc33.noarch
Antwort2
Ich könnte die fehlenden Module hinzufügen, indem ich grub2-efi-x64-modules
das Paket auf Fedora installiere.
In meinem Fall hatte ich danach einen weiteren Fehler, dass „EFI-Variablen auf meinem System nicht unterstützt werden“. Ich fand einen anderen Stackexchange-Beitrag und konnte das Problem beheben, indem ich die Chroot-Umgebung verließ und das Efivarfs-Modul über lud modprobe efivarfs
. Dann loggte ich mich wieder in das gemountete Stammverzeichnis ein und mountete es über mount -t efivarfs efivarfs /sys/firmware/efi/efivars
.
Antwort3
Unter Ubuntu (dadurch wird EFI-Unterstützung in/usr/lib/grub/x86_64-efi)
sudo apt install grub-efi
Antwort4
Ich habe es gelöst, indem ich grub2-efi-modules und efibootmgr installiert habe