Ein System kann über eine UEFI-Firmware verfügen und das Betriebssystem weiterhin im Legacy-BIOS-Modus starten. In dieser Situation kann das gebootete Betriebssystem nicht feststellen, ob die Hardware tatsächlich UEFI-fähig ist, da das BIOS nicht vorwärtskompatibel mit UEFI ist.
Sie können sich weiterhin die Firmware-Oberfläche ansehen, wenn etwas mit UEFI zu tun hat, dies ist jedoch herstellerspezifisch und inkonsistent. Es gibt also auch keine eindeutige Antwort von dieser Seite.
Die kanonische Methode zum Beweisen Ihres x86 (_64) -Kernels wird von UEFI gestartet:
$ dmesg | grep 'EFI v'
[ 0.000000] efi: EFI v2.31 by EDK II
Der Kernel druckt diese Nachricht am Haupteinstiegspunkt des EFI-Starts. Der Kernel wird genau dann mit UEFI gestartet, wenn eine solche Nachricht vorhanden ist.
Andere informative Sachen:
$ dmesg | grep 'efi: mem'
[ 0.000000] efi: mem00: type=7, attr=0xf, range=[0x0000000000000000-0x00000000000a0000) (0MB)
...
Dies ist die Speicherzuordnung, die von der EFI-Firmware an den Kernel übergeben wird.
$ ls -F /sys/firmware/efi
efivars/ systab vars/
Dies sind Kernel-ABIs, die mit EFI verwandt sind. efivars
(3.8+) und vars
sind Kernel-ABI des EFI-NVRAM, sodass Sie die Startoptionen damit ändern können.
Das Fehlen dieser Hinweise beweist jedoch nicht, dass das System nur ein BIOS ist.
Empirisch gesehen haben alle neueren Laptops alle UEFI-Firmware. Die neuesten Server werden auf die UEFI-Firmware migriert.
Bearbeiten: Der Autor von rEFInd hat eine gründlichere Erklärung . Schritte sind die gleichen.
Außerdem erkennt die Firmware Test Suite von Ubuntu möglicherweise, ob Ihre UEFI-Firmware über eine Kompatibilitätsfunktion für ältere BIOS verfügt . Obwohl es das Problem der Erkennung von UEFI-fähigen Firmware-Starts im BIOS-Modus nicht löst.