BIOSはハードウェアを初期化し、OSをメモリにロードします。最新のハードウェアでは、BIOSがUEFIに置き換えられています。このガイドでは、UEFIとは何か、およびLinuxでKVM仮想マシンのUEFIサポートを有効にする方法について説明します。
UEFIとは何ですか?
UEFI 、 Uの略 nified E xtensible F ファームウェア私 nterfaceは、従来のBIOSの新しい代替品です。
BIOSとは異なり、UEFIは、コンピューターのハードウェアとファームウェアの最上位にある小さなオペレーティングシステムです。 BIOSはファームウェアに保存されていることを忘れないでください。
UEFIは、BIOSよりもはるかに多くのことを実行できます。マザーボードのフラッシュメモリに保存することも、ハードドライブに保存することも、ネットワーク共有に保存することもできます。
レガシーBIOSをUEFIに置き換える当初の動機は、1990年代半ばの最初のIntel-HPItaniumシステムの初期開発中に生まれました。
大規模なサーバープラットフォームのBIOS制限により、Intelは1998年に「IntelBootInitiative」に取り組み始めました。これは後にExtensible Firmware Interface(EFI)として知られています。
AppleはIntelベースのMacシステムにEFIを採用し、HPはItanium2サーバーにEFIを採用しました。ただし、他のチップベンダーは、IntelのEFIを採用することにあまり関心がありませんでした。
2005年、 Unified EFI Forumという名前の非営利団体 AMD、American Megatrends、ARM、Apple、Dell、Hewlett Packard Enterprise、HP Inc.、IBM、Insyde Software、Intel、Lenovo、Microsoft、PhoenixTechnologiesなどの主要なテクノロジー企業のグループによって設立されました。
UEFI Forumの取締役会には、これら13社すべての代表者が含まれています。
EFI 1.10仕様を出発点として使用して、UEFIフォーラムが開発を引き継ぎ、バージョン2.0以降でUnifiedEFIに名前を変更しました。
彼らは、UEFIをBIOSの普遍的な代替品として合意し、UEFI仕様の管理と推進に責任を負いました。
UEFIの利点
UEFI仕様には、レガシーBIOSに比べて多くの重要な利点があります。ここにいくつかの注目すべき機能があります:
- サイズが2.2TB以上のハードドライブパーティションのサポート。
- UEFIはMBRをGPTパーティションに置き換えたため、ドライブに4つ以上のプライマリパーティションを作成できるようになりました。
- UEFIセキュアブート機能は、オペレーティングシステムがロードされる前にマルウェア攻撃から防御するのに役立ちます。
- 起動時間が短縮されます。
- グラフィックやマウスカーソルのサポートなど、スタイリッシュなユーザーインターフェース。
- 効率的な電力とシステム管理。
- 堅牢な信頼性と障害管理。
- 上位互換性と上位互換性。
既存のハードウェアではBIOSをUEFIに置き換えることはできないことに注意してください。 UEFIをサポートおよび含むハードウェアを購入する必要があります。
UEFI仕様はプラットフォームに依存せず、複数のプラットフォームとアーキテクチャをサポートします。 UEFIの基本を理解していただければ幸いです。ここで、KVMゲストに対してUEFIサポートを有効にする方法を見てみましょう。
LinuxでKVM仮想マシンのUEFIサポートを有効にする
システムにKVMがすでにインストールされていると思います。まだインストールしていない場合は、次のガイドを確認してください。
- CentOS8サーバーにKVMをインストールして構成する
- Ubuntu20.04ヘッドレスサーバーにKVMをインストールして構成する
- OpenSUSETumbleweedにKVMをインストールして構成する
仮想マシンを作成する前に、 OVMFをインストールする必要があります KVMホストシステム上のパッケージ。
OVMFは、IntelのtianocoreファームウェアをKVM/QEMU仮想マシンに移植したものです。 KVMとQEMUの両方のサンプルUEFIファームウェアが含まれています。
仮想マシンをテストするため、または(付属の)EFIシェルを使用するために、UEFIファームウェアを簡単にデバッグおよび実験できます。
KVMのインストール時に、UEFIが依存関係としてすでにインストールされている可能性があります。インストールされていない場合に備えて、以下のようにインストールできます。
KVMホストがCentOS/RHELで実行されている場合は、実行して仮想マシン用のUEFIファームウェアをインストールします。
$ sudo dnf install edk2-ovmf
ホストシステムがUbuntuの場合は、次を実行します:
$ sudo apt install ovmf
終わり! UEFIサポートを有効にしました。 UEFIをサポートする仮想マシンを作成しましょう。
UEFIを使用して仮想マシンを起動する
コマンドラインモードを使用する場合は、 --boot uefi
を追加します 新しい仮想マシンを作成するときのオプション:
$ virt-install --name centos8 --ram=2048 --vcpus=1 --cpu host --hvm --disk path=/var/lib/libvirt/images/centos8-vm1,size=10 --location /home/ostechnix/centos8.iso --network bridge=br0 --graphics vnc --boot uefi
または、 Virt-managerを使用することもできます 新しいゲストを作成するためのGUIアプリケーション。初心者にとっては非常に簡単です。
Virt-managerを開きます アプリケーションを作成し、新しい仮想マシンを作成します:
KVMゲストのインストールメディアまたはISOファイルの場所を選択します:
KVMゲストのメモリとCPUコアを選択します:
KVMゲスト用のディスクイメージを作成します:
[インストール前に構成をカスタマイズする]チェックボックスをオンにして、[完了]ボタンをクリックします:
これで、仮想マシンのハードウェアの詳細が表示されます。 [概要]セクションから、 "UEFI X86_64 ..."を選択します。 [ファームウェア]ドロップダウンボックスのオプション。
[適用]ボタンをクリックし、上部の[インストールの開始]ボタンをクリックして、KVMゲストマシンのインストールを続行します。
これで、最初の起動時にTianoCoreスプラッシュ画面が表示されるはずです:
通常どおりインストールを続行して終了します。
UEFI設定インターフェイス
従来のBIOSでは、ブートメニューが表示されてBIOSに入り、BIOS設定を変更する前に、適切なファンクションキーを押す必要があります。 UEFIでは必要ありません。 Grubブートメニューから直接UEFI設定画面にアクセスできます。
KVMでUEFIサポートが有効になっている場合は、Grubブートメニューに[システムセットアップ]メニューエントリが表示されます。
システムセットアップに入り、UEFI設定インターフェイスがどのように見えるかを確認します。
物理システムでさまざまな機能を備えたさまざまなUEFIインターフェイスが表示される場合があります。多くのPCには、ここに示す古いBIOSセットアップ画面のように見えて機能するテキストモードのUEFI設定インターフェイスがまだ付属しています。
PCのファームウェアに変更を加えたら、[続行]を選択し、Enterキーを押してブートメニューに戻ります。