Como saber se estou inicializando usando o UEFI?

46

Eu estava pesquisando, mas não encontrei uma maneira óbvia de saber se o GRUB está usando UEFI na inicialização do sistema, no modo de compatibilidade do BIOS ou em um BIOS completo. Eu encontrei apenas métodos do Windows . Existe algo nos logs de inicialização do GRUB ou do Kernel que mostra se estou usando UEFI, EFI ou BIOS?

    
por Braiam 04.08.2014 / 18:58

2 respostas

31

Se você inicializou usando o firmware UEFI em vez de usar o firmware do BIOS, o sistema deverá disponibilizar as variáveis do EFI NVRAM em:

/sys/firmware/efi/vars/

ou

/sys/firmware/efi/efivars/

Ao inicializar usando um BIOS (ou o modo de emulação BIOS do firmware UEFI), essas variáveis não estarão disponíveis.

Na verdade, como apontou @Santropedro, o caminho

/sys/firmware/efi

está faltando ao inicializar usando um BIOS, que é mais fácil de verificar.

    
por 04.08.2014 / 19:38
42

Primeiro método:

Ok, eu inicializei minha caixa de UEFI para verificar. Primeira dica, perto do topo de dmesg . Isso não deve aparecer se você for inicializado via BIOS:

[    0.000000] efi: EFI v2.31 by American Megatrends
[    0.000000] efi:  ACPI=0xd8769000  ACPI 2.0=0xd8769000  SMBIOS=0xd96d4a98 
[    0.000000] efi: mem00: type=6, attr=0x800000000000000f, range=[0x0000000000000000-0x0000000000001000) (0MB)
⋮


Segundo método:

$ sudo efibootmgr
BootCurrent: 0000
Timeout: 0 seconds
BootOrder: 0000
Boot0000* debian

Se você não é, então deve aparecer o seguinte:

$ sudo efibootmgr        

EFI variables are not supported on this system.

Note que você terá que ter o pacote efibootmgr instalado. Você também pode tentar listar as variáveis EFI:

$ efivar -l 
... over 100 lines of output ...


Terceiro método:

Verifique se você tem um /boot/efi :

$ df -h --local | grep /boot
/dev/sda2       229M   31M  187M  14% /boot
/dev/sda1       120M  250K  119M   1% /boot/efi

Dentro dessa partição, devem estar os arquivos que o UEFI executa para inicializar.

Se você usar algum desses métodos, as entradas relevantes não aparecerem, é muito provável que você não esteja usando UEFI.

    
por 04.08.2014 / 19:22

Tags