
GPT(GUID Partition Table) は、パーティションの数、冗長性、ディスク容量の扱いにおいて、従来の MBR(Master Boot Record) と大きく異なります。ここでは、特に UEFI とデュアルブートとの関係を整理します。
1. GPT と MBR の違い#
| 項目 | MBR | GPT |
|---|---|---|
| パーティション情報 | 先頭セクタに基本的なパーティション表を置く | GUID 付きのエントリを使い、ヘッダーと表を管理する |
| パーティション数 | 基本パーティションは最大 4 個。拡張パーティションを使えば論理パーティションを追加できる | 標準的な構成では 128 個程度。実際の上限は実装と設定による |
| 大容量ディスク | 古いアドレス方式の制限を受ける | 2 TiB を超えるディスクにも対応しやすい |
| 起動情報 | BIOS 起動では先頭セクタのコードを利用する | UEFI 起動では通常 ESP にある EFI プログラムを利用する |
| 冗長性 | パーティション表は基本的にディスク先頭だけにある | 先頭と末尾にヘッダーとパーティション表のバックアップを持つ |
| 整合性確認 | 構造が単純で、破損時の復旧情報が少ない | CRC によってヘッダーと表の破損を検出しやすい |
| 互換性 | Legacy BIOS と相性がよい | UEFI と組み合わせるのが一般的。Protective MBR によって古いツールから保護する |
2. GPT と UEFI の起動#
2.1 EFI System Partition(ESP)#
UEFI と GPT を組み合わせる場合、ディスクには通常 EFI System Partition(ESP) を用意します。ESP は一般に FAT32 でフォーマットされ、各 OS の EFI 起動プログラムを保存します。
EFI/
├── BOOT/BOOTX64.EFI
├── ubuntu/grubx64.efi
└── Microsoft/Boot/bootmgfw.efi.efi ファイルは通常 PE/COFF 形式の EFI イメージです。ELF ファイルに拡張子を付け替えたものではありません。
2.2 UEFI の起動項目#
UEFI は NVRAM の BootOrder と Boot#### などの起動項目をもとに、どの EFI プログラムを実行するか選びます。複数の OS がある場合、ファームウェアの起動メニューや GRUB のメニューから選択できます。
2.3 GRUB を使う場合#
GRUB を UEFI モードでインストールすると、GRUB の EFI プログラムは ESP に保存され、設定ファイルやモジュールは通常 /boot/grub/ に置かれます。GRUB は Linux、Windows Boot Manager、複数のカーネルなどを一つのメニューから選択できるようにします。
# /boot は例。実際の ESP のマウントポイントに置き換える
sudo grub-install --target=x86_64-efi --efi-directory=/boot
# GRUB の設定を生成する
sudo grub-mkconfig -o /boot/grub/grub.cfggrub-mkconfig は設定ファイルを生成するコマンドであり、EFI プログラムのインストールそのものではありません。
3. GPT と Legacy BIOS(CSM)#
GPT は UEFI と組み合わせるのが一般的ですが、GRUB を使えば GPT ディスクを Legacy BIOS から起動できる場合もあります。その場合、通常はファイルシステムを作成しない小さな BIOS Boot Partition を用意し、GRUB の core.img を埋め込む場所として使います。
GPT ディスクの先頭には、古いツールがディスクを空と誤認して上書きしないよう、Protective MBR が置かれることがあります。これは従来の MBR ブートコードを完全に提供するものではありません。
4. GPT を使ったデュアルブート#
- Linux と Windows は、通常それぞれの EFI 起動プログラムを ESP 内の別ディレクトリに保存します。
- UEFI の起動メニューから Windows Boot Manager や GRUB を選択できます。
- GRUB を既定の起動項目にすれば、Linux と Windows、複数の Linux カーネルを一つのメニューで選べます。
- GRUB を使わない場合は、UEFI の既定の起動項目がそのまま実行されます。
5. まとめ#
- MBR/GPT はパーティション方式であり、起動方式そのものではありません。
- GPT では通常 ESP を使って UEFI の EFI プログラムを保存します。
- GPT にも Protective MBR が存在する場合があります。
- GPT を Legacy BIOS から起動する場合、GRUB 用の BIOS Boot Partition が必要になることがあります。
- UEFI、ESP、GRUB、Linux カーネルの関係をまとめて確認したい場合は、全体の起動フローの記事を参照してください。


