ファームウェアは Linux カーネルより先に動作します。PC クラスのハードウェアでは、従来型 BIOS と UEFI が主要な二つのインターフェースです。両者は異なる方法でブート対象を検出するため、「BIOS がブートローダーを読み込む」という説明は一方の経路にしか当てはまりません。
システムの起動 · レッスン 2
起動プロセス:BIOS
従来の BIOS と現代の UEFI ファームウェアが、次のブート段階を検出して承認する仕組みを学びます。
従来型 BIOS のブート
初期のプラットフォーム初期化とブートデバイス選択を終えると、従来型 BIOS は通常、選択したディスクの先頭 512 バイトのセクターを読み取り、想定される署名があれば、そのブートコードへ制御を渡します。
MBR レイアウトでは、このセクターに小さなブートコード領域、四つのパーティションエントリ、署名が収まります。高機能なローダーには小さすぎるため、そのコードは多くの場合、ディスク上やファイルシステム内にある次の段階を探します。
GPT ディスクから BIOS ブートすることもできますが、protective MBR だけではローダーの後続段階を格納できません。GRUB は通常、GPT 上の小さな BIOS Boot Partition に組み込み用コアコードを置きます。正確な配置は、インストールしたローダーによって決まります。
従来型 BIOS は、選択したブートディスクから最初に何を読み込むのが一般的ですか?
UEFI ブート
UEFI ファームウェアは EFI System Partition(ESP)上の定められたファイルシステムを理解し、EFI 実行ファイルを読み込めます。不揮発性変数に保存されたファームウェアのブートエントリは、通常、ディスク、パーティション、実行ファイルのパスを指定します。リムーバブルメディアや復旧時には、標準化されたフォールバックパスも利用できます。
ESP に格納されるのはブートアプリケーションと補助ファイルであり、「起動情報のすべて」ではありません。ブート設計によって、カーネルイメージ、initramfs、ローダー設定は ESP 上にも別の場所にも置けます。UEFI システムでは GPT が一般的ですが、ファームウェアインターフェースとパーティションテーブル方式は別々の層です。
UEFI は EFI System Partition から何を読み込むのが一般的ですか?
Secure Boot と信頼
Secure Boot を有効にすると、UEFI は登録されたプラットフォーム鍵とポリシーに従ってブートチェーンの署名を検証します。Linux ディストリビューションは、署名済み shim、ブートローダー、カーネル、カーネルモジュールのポリシーを使って、この信頼の連鎖を延長できます。
Secure Boot はディスクを暗号化せず、すべてのユーザー空間プログラムが安全だと証明するものでもありません。設定された信頼ポリシーの下で、未承認のプリブートコードが受け入れられるのを防ぐのに役立ちます。
UEFI Secure Boot が主に強制するものは何ですか?
ファームウェア設定を開く
ファームウェア設定を開くキーはメーカーやモデルごとに異なり、起動初期の Delete、Escape、ファンクションキーなどがよく使われます。無作為に設定を変えず、デバイスの文書を確認してください。一部の UEFI システムでは、OS からファームウェア設定へ再起動するよう要求することもできます。
Secure Boot、ストレージコントローラーのモード、TPM、仮想化、ブート順序を変える前に、既存の値と復旧キーを記録してください。ファームウェア設定の変更によって、暗号化ボリュームやインストール済み OS に一時的にアクセスできなくなることがあります。
ファームウェア設定を開く共通キーが存在しないのはなぜですか?
レッスン完了
起動プロセス:BIOS を完了しました
これで、従来型 BIOS と UEFI で異なるブート検出モデルを区別できます。
従来型 BIOS と先頭セクターのブートコード、後続ローダー段階を関連付ける。
UEFI ブートエントリと ESP 上の EFI 実行ファイルを関連付ける。
GPT、ファームウェアインターフェース、ブートローダー配置を別々の選択肢として扱う。
ファームウェアの信頼設定やストレージ設定は、復旧手段を用意してから変更する。