トップQs
タイムライン
チャット
視点

EFIシステムパーティション

ウィキペディアから

EFIシステムパーティション
Remove ads

EFIシステムパーティション (EFI system partition; ESP) とはデータ記憶装置(ハードディスクドライブソリッドステートドライブなど)のパーティションの一つで、UEFIに準拠するコンピュータで使われる。コンピュータの電源を入れて起動するとき、UEFIファームウェアはESPに記憶されているファイルを読み込み、インストールされているオペレーティングシステムや様々なユーティリティをブートする。ESPはUEFIで規定されているFATベースのファイルシステムでフォーマットされている必要がある。このファイルシステムの仕様は本来のFATの仕様とは別物とされている。[1][2]

Thumb
EFIシステムパーティションのLinux

ESPには他のパーティションにインストールされている全てのオペレーティングシステムのブートローダまたはカーネルイメージ、起動時にファームウェアが使用するデバイスドライバ、オペレーティングシステムが起動する前に実行されるシステムユーティリティプログラム、エラーログなどのデータファイルが含まれる。[3]

Remove ads

概略

EFIシステムパーティションはUEFIで規定されているFATファイルシステムに基づいた仕様のファイルシステムでフォーマットされている必要がある。GUIDパーティションテーブル (GPT) にあるEFIシステムパーティションのGUIDC12A7328-F81F-11D2-BA4B-00A0C93EC93Bで、MBRパーティションテーブルでのIDは0xEFである。GPTディスクおよびMBRディスクの両方ともEFIシステムパーティションを含むことができ、UEFIファームウェアは両方の形式をサポートする必要がある。また、CD-ROMDVDEl Toritoブータブルフォーマットもサポートされている。[3]

UEFIはパーティションの最初のブロック(セクタ)を旧来の(レガシー)ブートセクタを生成するための予約領域とすることで、旧来のシステムとの後方互換性を提供する。旧来のBIOSベースのシステムでは、パーティションの最初のセクタはメモリに読み込まれた後にコードとして実行される。UEFIファームウェアは互換性サポートモジュール (CSM) を通して旧来のBIOSモードで起動する時を除き、マスターブートレコード (MBR) のコードは実行しない。[4]

UEFIの仕様ではMBRパーティションテーブルを完全にサポートすることが求められる[3]。しかし、いくつかのUEFI実装ではブートディスク上のパーティションテーブルの種類を検出してBIOSベースのCSMブートに切り替えることにより、MBRディスクのEFIシステムパーティションからUEFIブートすることを妨げる場合がある。[3]

UEFIファームウェアはUSBフラッシュドライブといったリムーバブルドライブからの起動をサポートする。この用途では、リムーバブルドライブはFAT12、FAT16、またはFAT32ファイルシステムでフォーマットする必要がある。ブートローダはESP標準ファイル体系に基づいて保存されているか、あるいはブートローダーの完全パスをシステムのブートマネージャに渡す必要がある。[3]

Remove ads

使用例

要約
視点

Linux

GRUB2およびeliloLinux用の完全に独立したUEFIブートマネージャとして提供する。一度UEFIファームウェアによって読み込まれると、EFIシステムパーティションに限らずサポートする全てのデバイス、パーティションおよびファイルシステムにあるカーネルイメージへアクセスして起動することができる。

EFI Boot Stubは標準のUEFIブートローダを使用せずにLinuxカーネルを起動することを可能にする。自身をPE/COFFイメージと見せかけてファームウェアにUEFIアプリケーションとして認識させることで、EFI Boot Stub付きx86カーネルイメージをUEFIファームウェアから直接読み込み・実行させることができる。BIOSベースのブートローダも読み込み・実行させることができるため、EFI Boot Stubはどんな起動環境でも単一カーネルイメージを使用できるようになっている。[5]

LinuxカーネルのEFI Boot StubサポートはカーネルのコンフィグでCONFIG_EFI_STUBオプションをオンにすることで有効にすることができる[6]。これは2012年3月18日にリリースされた安定版Linuxカーネル バージョン3.3で取り入れられた[7]

Gummiboot (systemd-bootとも言う) はEFIシステムパーティションのみにアクセスしてUEFIイメージを読み込み・実行するシンプルなUEFIブートマネージャである。Gummibootは他のパーティションやファイルシステムにあるファイルへのアクセスをサポートしないため、設定ファイルの一部、カーネルイメージやinitrdイメージはEFIシステムパーティション上に配置する必要がある。LinuxカーネルはCONFIG_EFI_STUBでビルドする必要があるため、カーネルはUEFIイメージとして直接実行される[8]

EFIシステムパーティションのマウントポイントは通常/boot/efiにあり、Linuxが起動した後にアクセスできるようになる[9]

Windows

マイクロソフトは、ディスクにパーティションを作成するとき、その最初に置くパーティションはEFIシステムパーティションにすることを推奨している[10]。これはEFIの仕様で求められているわけではない。Windows XP 64ビットエディションおよびそれ以降ではmountvol /sコマンドを実行することでEFIシステムパーティションにアクセスできるようになる。

Intel Mac

Intel Macでは、EFIシステムパーティションは未使用のままで起動には使用されていない[11]。しかし、EFIシステムパーティションはファームウェアアップデート時に一時的に使われる[12]

EFIパーティションが削除されてもシステムはブートできる。この場合、ユーザーはブートマネージャでBoot Campと既定のmacOSのどちらから起動するかを選ぶことができるが、ファームウェアアップデートは失敗する。

Remove ads

関連項目

脚注

Loading content...

外部リンク

Loading content...
Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads