GUIDパーティションテーブル GUIDパーティションテーブルの概要

GUIDパーティションテーブル

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/12/18 13:32 UTC 版)

GUIDパーティションテーブルのレイアウト。各LBAは512バイト。

これはインテルの提案しているEFI標準の一部であり、旧来のBIOSで使用されているマスターブートレコード (MBR) の置き換えを意図している。

従来のMBRパーティションが、テーブルのパラメータから、1セクタ512Byteで定義した場合、最大2TiB迄の領域までしか管理できないのに対し、GPTでは、最大8ZiB迄の領域を定義、管理できる。

2013年頃には、PC用として一般に市販のHDDの大容量化で、2T越えが始まっておりGPT導入は必至の課題であったが、マザーボード上のROM内などのシステムソフトウェアのEFI対応もだいたい進んできていたことで、無事に導入が進んだという状況であった。

機能

MBRがマスターブートコード(ブートローダ:起動できるアクティブパーティションを探してプログラムをそこからロードして実行する機械語コードが入っている)で始まるのに対して、GPTはEFIが持つ拡張機能を使ってその処理を実現している。MBRのエントリがディスクの保護と互換性維持の目的で存在しているのに対して、GPTはパーティションテーブル・ヘッダーとしての役割を担っている。

GPTはLogical Block Addressing (LBA) を使ってディスク内の位置を示す。MBRではCHSによって位置を指定していた。古いMBR情報は LBA 0 に含まれていて、GPTヘッダーは LBA 1 に置かれ、その後にパーティションテーブルが続く。Windowsオペレーティングシステム (OS) では、16,384バイト(32セクター、16KiB)がGPT用に予約されていて、LBA 34 から通常の使い方ができるようになっている。

GPTは冗長性も提供している。GPTヘッダーとパーティションテーブルはディスクの先頭と最後部の両方に書き込まれている。

従来のMBR (LBA 0)

GPTを使用するディスクにもMBRが存在するのは、MBRを前提としたディスクユーティリティを利用した場合の事故の防止のため(誤って何も中身がないと判断されないため)である。MBRにはそのディスク全体がひとつのパーティションになっているという情報が記述されることになっている。

GPT自体がBIOSによるMBRパーティションの代替であるため、そのパーティション識別子はシステムIDとして 0xEE が設定され、GPTを使用していることを示すことになっているが、双方のパーティションテーブルに有効な値を定義し、それをハイブリッドMBRと呼称する向きもある。但し、これはGPTの「MBRパーティションに対する置き換え」という目的から標準化、明示的な定義がされていない実装であり、OSによって扱いが異なる。ハイブリッドMBRの構成では多くの場合GUIDパーティションの方が優先されるが、Windowsをベースとするシステムでは、GPTをサポートするものであっても有効なMBRが存在する場合は、そちらを優先して解釈する。また、本来EFIとセットの実装であるが、MBRからGPTを理解するローダへ処理を移すという手段により、比較的最近のLinuxではEFIが実装されていないシステムであっても、GPTからの起動や利用を可能としている[1]

パーティションテーブル・ヘッダー (LBA 1)

パーティションテーブル・ヘッダーでは、ユーザが使用可能なディスクの範囲を定義している。また、パーティションテーブル内のパーティションエントリ数とサイズを定義している。Windowsマシンでは、128エントリであり、それぞれ128バイトである。したがって、最大128個のパーティションを作成できる。

ヘッダーはディスクのGUID (: Globally Unique Identifier) を含んでいる。また、ヘッダー自身のサイズと位置(常に LBA 1)と、第二GPTヘッダーのサイズと位置(常にディスクの最後のセクター)を記録している。また重要な点として、自身のCRC32チェックサムを持っているので、専用のユーティリティ以外でGPTを変更するとチェックサムと不整合を起こす。チェックサムが不整合を起こすと、EFIは第二GPTを第一GPTにコピーする。第二GPTのチェックサムも不正だった場合はディスクにアクセスできなくなる。

パーティションエントリ (LBA 2〜33)

パーティションエントリは単純である。最初の16バイトにパーティションの種類を表すGUIDが書き込まれている。たとえば、EFIシステムパーティションのGUIDは{C12A7328-F81F-11D2-BA4B-00A0C93EC93B}である。ただし先頭3項目(8バイト)は項目内でリトルエンディアンなので、実際には先頭から、28 73 2A C1 1F F8 D2 11 BA 4B 00 A0 C9 3E C9 3Bのように書き込まれている。次の16バイトにはそのパーティション固有のGUIDが書き込まれている。続く8バイトにパーティションの最初のLBA、その次の8バイトにパーティションの最後のLBAがリトルエンディアンで書き込まれている。さらにその後に、パーティション名と属性を書き込めるようになっている。

OSのサポート

UNIX / Unix系

OS バージョン アーキテクチャ BIOS経由でGPTからの起動 EFI経由でGPTからの起動 備考
FreeBSD 7.0以降 Yes Yes ハイブリッドMBRの構成ではGUID、MBRパーティションの両方が使われる。
Linux
  • ほとんどのx86 Linuxディストリビューション
  • Fedora 8以降
  • Ubuntu 8.04以降[2]
Yes Yes GPTを扱えないツールもある。gdisk[3]GNU GRUBgrub2などがGPTに対応。
macOS 10.4.0以降(一部機能は10.4.6以降)[4] No Yes
Solaris Solaris 10 1/06以降 Yes Yes Sparc版は非対応。x86/x64版は1/06 (update 2) よりGRUBが標準ブートローダーとなる。よってGPT対応もそれ以降。

Windows

32ビット版

古いバージョンの32ビット版(x86版)Windowsでは、2TiB以上の容量のディスク、およびGUIDパーティション自体を扱えないという問題がある。これは各ベンダーの32ビット版デバイスドライバに起因する。

Vista以降では、32ビット版でもこれらの問題は修正されている。2TiB以上のパーティションを扱えないのはMBRパーティションの制限である。

下記の表にない、以前のOS(x86版)ではGPTはサポートされない。x86より以前のアーキテクチャでも同様。

OS バージョン アーキテクチャ BIOS経由でGPTからの起動 EFI経由でGPTからの起動 GPTへのアクセス 備考
Windows XP RTM x86 No No No
Windows Server 2003 RTM x86 No No No
Service Pack 1以降 x86 No No データ用可、起動不可[5] ハイブリッドMBRの構成でMBRパーティションの方が優先される。
Windows Vista RTM以降 x86 No No データ用可、起動不可
Windows Server 2008 RTM以降 x86 No No データ用可、起動不可
Windows 7 RTM以降 x86 No No データ用可、起動不可 ハイブリッドMBRの構成でMBRパーティションの方が優先される[6]
Windows 8 RTM x86 No Yes Yes
Windows 8.1 RTM x86 No Yes Yes
Windows 10 TH1 RTM以降 x86 No Yes Yes

64ビット版

IA-64版とx86-64版を列挙している。下記の表にないOS(64ビット版)ではGPTはサポートされない。

IA-64アーキテクチャのOSでは当初から、EFIとGPTからの起動をサポートしている。

OS バージョン アーキテクチャ BIOS経由でGPTからの起動 EFI経由でGPTからの起動 GPTへのアクセス 備考
Windows XP 64-bit Edition, RTM IA-64 No Yes Yes ハイブリッドMBRの構成でMBRパーティションの方が優先される。リムーバブルディスクはMBRだけサポート[注釈 1]
64-bit Edition, Version 2003 IA-64 No Yes Yes
Windows Server 2003 RTM IA-64 No Yes Yes ハイブリッドMBRの構成でMBRパーティションの方が優先される。起動ディスクはGPTが必須[7]
x64, Service Pack 1 x64 No No データ用可、起動不可 ハイブリッドMBRの構成でMBRパーティションの方が優先される。
Windows XP x64 Edition x64 No No データ用可、起動不可[5] ハイブリッドMBRの構成でMBRパーティションの方が優先される。リムーバブルディスクはMBRだけサポート[注釈 1]
Windows Vista RTM x64 No No データ用可、起動不可[8] ハイブリッドMBRの構成でMBRパーティションの方が優先される。
Service Pack 1 x64 No VGAだけ要CSM Yes
Windows Server 2008 RTM No VGAだけ要CSM Yes
Windows 7 RTM x64 No VGAだけ要CSM Yes ハイブリッドMBRの構成でMBRパーティションの方が優先される[6]
Windows Server 2008 R2 RTM No VGAだけ要CSM Yes ハイブリッドMBRの構成でMBRパーティションの方が優先される。
Windows 8 RTM x64 No Yes Yes ハイブリッドMBRの構成でMBRパーティションの方が優先される[6]
Windows 8.1 RTM x64 No Yes Yes
Windows Server 2012 RTM x64 No Yes Yes
R2, RTM x64 No Yes Yes
Windows 10 TH1 RTM以降 x64 No Yes Yes
Windows 11 21H2 RTM以降 x64 No Yes Yes

注釈

  1. ^ a b ユーザーからはGUIDパーティションにアクセス不可。サードパーティー製のツール経由でだけGUIDパーティションにアクセス可能。
  2. ^ この表にあるGUIDはリトルエンディアンで表記されている。例えば、EFIシステムパーティションのGUIDはC12A7328-F81F-11D2-BA4B-00A0C93EC93Bとなっているが、これは次のような16バイトの並びである: 28 73 2A C1 1F F8 D2 11 BA 4B 00 A0 C9 3E C9 3B。先頭3ブロックだけバイト順序が入れ替わっている点に注意。
  3. ^ 当初はWindowsのデータパーティションと同じ値を使用していた。のちに変更が提案され、現在に至る[13]
  4. ^ a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae af ag ah ai aj ak al dm-verityの検証データの保存用
  5. ^ a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae af ag ah ai aj ak dm-verityの署名データの保存用
  6. ^ Solaris の/usrのGUIDは、macOSでZFS通用GUIDとも使われている。

出典

  1. ^ http://www.gnu.org/software/grub/manual/html_node/BIOS-installation.html
  2. ^ https://help.ubuntu.com/community/MacBook
  3. ^ http://www.rodsbooks.com/gdisk
  4. ^ http://refit.sourceforge.net/myths/
  5. ^ a b http://www.microsoft.com/whdc/device/storage/GPT_FAQ.mspx#ELD
  6. ^ a b c http://www.rodsbooks.com/gdisk/hybrid.html
  7. ^ http://codeidol.com/windows/inside-windows-server-2003/Configuring-Data-Storage/Working-with-GPT-Disks/ Working with GPT Disks
  8. ^ UEFI と Windows http://www.microsoft.com/japan/whdc/system/platform/firmware/UEFI_Windows.mspx
  9. ^ a b c Table 5.7 Defined GPT Partition Entry — Partition Type GUIDs, 5. GUID Partition Table (GPT) Disk Layout — UEFI Specification 2.10 documentation” (英語). Unified Extensible Firmware Interface Forum (2022年8月). 2023年10月8日閲覧。
  10. ^ GNU GRUB Manual 2.04: BIOS installation”. 2021年5月8日閲覧。
  11. ^ create partition primary”. Microsoft Learn. 2022年9月23日閲覧。
  12. ^ Discoverable Partitions Specification | UAPI Group Specifications”. The Linux Userspace API (UAPI) Group. 2023年10月1日閲覧。
  13. ^ Smith, Rod (2011年6月23日). “Need for a unique Linux GPT GUID type code (PATCH included)”. bug-parted Archives. 2021年5月8日閲覧。
  14. ^ 985974 – document GPT partition type for LVM” (英語). Red Hat Bugzilla (2016年5月11日). 2023年10月7日閲覧。
  15. ^ Peter Rajnoha (2016年1月19日). “man: mention GPT id for LVM in pvcreate man page (7f6a1e6b)” (英語). team / lvm2 · GitLab. 2023年10月7日閲覧。
  16. ^ a b LUKS GPT GUID” (英語). NARKIVE. 2023年10月7日閲覧。
  17. ^ a b Rod Smith (srs5694) (2018年7月5日). “Added Ceph and Linux encrypted (LUKS and dm-crypt) partition type codes. · samangh/gptfdisk@8dab6f2” (英語). GitHub. 2023年10月7日閲覧。
  18. ^ FreeBSD System Manager's Manual gpart(8)”. 2021年8月15日閲覧。


「GUIDパーティションテーブル」の続きの解説一覧




固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「GUIDパーティションテーブル」の関連用語

GUIDパーティションテーブルのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



GUIDパーティションテーブルのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのGUIDパーティションテーブル (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS