GNU/Linux >> LINUX-Kenntnisse >  >> Linux

„efi-Variablen werden auf diesem System nicht unterstützt“?

Ich versuche Arch Linux auf einem neuen (und sehr beschissenen) HP Pavillion 15 Notebook zu installieren.

Dies ist eine UEFI-basierte Maschine. Nach mehreren Schlägen habe ich es geschafft, ziemlich weit zu kommen. Der Legacy-Modus ist im System-Setup deaktiviert, und ich habe EFI auf die Arch-DVD gebootet, die ich gebrannt habe, und sowohl das Arch-Anfängerhandbuch als auch das erweiterte Installationshandbuch bis zu dem Punkt durchlaufen, an dem ich Grub installiere.

Während chroot ed, ich führe aus:

grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=arch_grub --recheck --debug

Dies gibt eine Menge Output aus, einschließlich:

EFI-Variablen werden auf diesem System nicht unterstützt

Als ich das erste Mal an diesen Punkt kam, fuhr ich mit der Installation fort, ohne zu wissen, ob es sich tatsächlich um ein Problem handelte. Es stellte sich heraus, dass beim Neustart der Maschine kein bootfähiges Medium gefunden werden konnte und die Maschine sich weigerte zu booten. An diesem Punkt konnte ich in das UEFI-Setup-Menü gehen und eine EFI-Datei zum Booten auswählen, und Arch Linux startete.

Aber ich gehe jetzt zurück und installiere es erneut, um das obige Problem zu beheben.

Wie kann ich GRUB dazu bringen, richtig zu installieren?

Akzeptierte Antwort:

Das Problem war einfach, dass die efivarfs Kernelmodul wurde nicht geladen.

Dies kann bestätigt werden durch:

sh-4.2# efivar-tester
UEFI variables are not supported on this machine.

Wenn Sie chroot sind ed in Ihre neue Installation, exit aus und aktivieren Sie dann efivarfs :

exit
modprobe efivarfs

(efivarfs waren früher efivars , wenn dies also einen Fehler zurückgibt, versuchen Sie es mit modprobe efivars )

…und dann chroot wieder rein. In meinem Fall bedeutet das:

chroot /mnt

aber Sie sollten chroot genauso wie zuvor.

Testen Sie nach dem Wiedereinschalten erneut:

efivar-tester

Dadurch wird kein Fehler mehr gemeldet und Sie können Grub genauso installieren wie zuvor.

grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=arch_grub --recheck --debug

Linux
  1. Gibt es Namenskonventionen für Variablen in Shell-Skripten?

  2. Unterschied zwischen exportierten und nicht in Bash enthaltenen Shell-Variablen?

  3. Linux – Sind Umgebungsvariablen für nicht privilegierte Benutzer unter Linux sichtbar?

  4. Betrieb wird mit Setfacl nicht unterstützt?

  5. CMake-Fehler:Die folgenden Variablen werden in diesem Projekt verwendet, aber sie sind auf NOTFOUND gesetzt

Kein Systemd-Fan? Hier sind 14 Systemd-freie Linux-Distributionen

So überprüfen Sie, ob Sie sich in einer Bildschirmsitzung befinden oder nicht in Linux

ssh-copy-id funktioniert nicht

Auf einige Ordner und/oder Dateien auf der externen Festplatte kann unter Linux, aber nicht unter macOS und Windows zugegriffen werden

Mounten von cifs:Vorgang wird nicht unterstützt

Warum werden einige CPU-Modelle der Intel-Familie 6 (Core 2, Pentium M) nicht von intel_idle unterstützt?