システムにUEFI BIOSがあることを確認するコマンドまたは方法(RTFMを除く)はありますか?

システムにUEFI BIOSがあることを確認するコマンドまたは方法(RTFMを除く)はありますか?

この質問をしたきっかけこれは別の質問です存在するUbuntuに尋ねる

私が尋ねる理由の1つはただの疑問です。私はこれについてもっと知りたいです。将来、その価値が何であれ、言葉です。

ただし、WTFユーザーとシステムに問題があるかどうかを知りたい場合は、ユーザーにプログラムを実行するように依頼することもできます。 ;-)

最初は、この情報を(または同様の)ツールで検出して報告できるかどうか疑問に思いましたdmidecode。しかし、UEFI BIOSaがaをシミュレートするとどうなりますかpre-UEFI BIOS

私はこの質問が時間が経つにつれてより興味深くなると思います。すべての主要なオペレーティングシステムの背後にある会社は合格に固執するようですEFI同じことも違います。」。<sigh/>

ベストアンサー1

システムにUEFIファームウェアがある可能性がありますが、レガシーBIOSモードでオペレーティングシステムを起動できます。この場合、BIOSはUEFIと互換性がないため、ブートオペレーティングシステムはハードウェアが実際にUEFIをサポートしているかどうかを判断できません。

UEFIに関連するものがある場合でも、ファームウェアインターフェイスを表示できますが、ベンダーによって異なり、一貫性がありません。だからそこには明確な答えはありません。

x86(_64) カーネルが UEFI から起動されることを証明する正式な方法:

    $ dmesg | grep 'EFI v'
    [    0.000000] efi: EFI v2.31 by EDK II

カーネルは次のメッセージを出力します。主なエントリポイントEFIブート。 UEFIによるカーネルの起動そして、もしそのようなニュースが存在します。

その他の情報コンテンツ:

    $ dmesg | grep 'efi: mem'
    [    0.000000] efi: mem00: type=7, attr=0xf, range=[0x0000000000000000-0x00000000000a0000) (0MB)
    ...

これはEFIファームウェアからカーネルに渡されたメモリマップです。

    $ ls -F /sys/firmware/efi
    efivars/  systab  vars/

これはEFI関連のカーネルABIです。efivars(3.8+)であり、varsEFI NVRAM用のカーネルABIなので、これを使用して起動オプションを変更できます。

しかし、これらの手がかりがないからといって、システムが単なるBIOSであることを証明することはできません。

経験的に、最近のラップトップにはUEFIファームウェアがあります。最新のサーバーがUEFIファームウェアに移行されています。

編集者:rEFIndの作者は次のとおりです。より徹底的な説明。ステップは同じです。

さらに、UbuntuのファームウェアテストスイートはUEFIファームウェアに以前のBIOSバージョンの互換性機能。 BIOSモードでUEFI対応ファームウェア起動を検出する問題は解決されません。

おすすめ記事