| GPT 分区详解  
 保护MBR   保护MBR包含一个DOS分区表(LBA0),只包含一个类型值为0xEE的分区项,在小于2TB的磁盘上,大小为整个磁盘;在更大的磁盘上,它的大小固定为2TB。它的作用是阻止不能识别GPT分区的磁盘工具试图对其进行格式化等操作,所以该扇区被称为“保护MBR”。实际上,EFI根本不使用这个分区表。  
  
  EFI部分  
 EFI部分又可以分为4个区域:EFI信息区(GPT头)、分区表、GPT分区、备份区域。  
 
 EFI信息区(GPT头)  
 起始于磁盘的LBA1,通常也只占用这个单一扇区。其作用是定义分区表的位置和大小。GPT头还包含头和分区表的校验和,这样就可以及时发现错误。  
 分区表  
 分区表区域包含分区表项。这个区域由GPT头定义,一般占用磁盘LBA2~LBA33扇区。分区表中的每个分区项由起始地址、结束地址、类型值、名字、属性标志、GUID值组成。分区表建立后,128位的GUID对系统来说是唯一的。  
 GPT分区  
 最大的区域,由分配给分区的扇区组成。这个区域的起始和结束地址由GPT头定义。  
 备份区  
 备份区域位于磁盘的尾部,包含GPT头和分区表的备份。它占用GPT结束扇区和EFI结束扇区之间的33个扇区。其中最后一个扇区用来备份1号扇区的EFI信息,其余的32个扇区用来备份LBA2~LBA33扇区的分区表。  
 
 EFI信息区数据结构
 EFI信息区位于磁盘的1号扇区(LBA1),也称为GPT头。其具体结构如下表所示 
 
EFI信息区结构
| 相对字节偏移量 (十六进制)
 | 字节数 | 说明[整数皆以little endian方式表示] |  
| 00~07 | 8 | GPT头签名“45 46 49 20 50 41 52 54”(ASCII码为“EFI PART”) |  
| 08~0B | 4 | 版本号,目前是1.0版,其值是“00 00 01 00” |  
| 0C~0F | 4 | GPT头的大小(字节数),通常为“5C 00 00 00”(0x5C),也就是92字节。 |  
| 10~13 | 4 | GPT头CRC校验和(计算时把这个字段本身看做零值) |  
| 14~17 | 4 | 保留,必须为“00 00 00 00” |  
| 18~1F | 8 | EFI信息区(GPT头)的起始扇区号,通常为“01 00 00 00 00 00 00 00”,也就是LBA1。 |  
| 20~27 | 8 | EFI信息区(GPT头)备份位置的扇区号,也就是EFI区域结束扇区号。通常是整个磁盘最末一个扇区。 |  
| 28~2F | 8 | GPT分区区域的起始扇区号,通常为“22 00 00 00 00 00 00 00”(0x22),也即是LBA34。 |  
| 30~37 | 8 | GPT分区区域的结束扇区号,通常是倒数第34扇区。 |  
| 38~47 | 16 | 磁盘GUID(全球唯一标识符,与UUID是同义词) |  
| 48~4F | 8 | 分区表起始扇区号,通常为“02 00 00 00 00 00 00 00”(0x02),也就是LBA2。 |  
| 50~53 | 4 | 分区表总项数,通常限定为“80 00 00 00”(0x80),也就是128个。 |  
| 54~57 | 4 | 每个分区表项占用字节数,通常限定为“80 00 00 00”(0x80),也就是128字节。 |  
| 58~5B | 4 | 分区表CRC校验和 |  
| 5C~* | * | 保留,通常是全零填充 |  分区项
 分区项结构 
分区项结构
| 相对字节偏移量 (十六进制)
 | 字节数 | 说明[整数皆以little endian方式表示] |  
| 00~0F | 16 | 用GUID表示的分区类型 |  
| 10~1F | 16 | 用GUID表示的分区唯一标示符 |  
| 20~27 | 8 | 该分区的起始扇区,用LBA值表示。 |  
| 28~2F | 8 | 该分区的结束扇区(包含),用LBA值表示,通常是奇数。 |  
| 30~37 | 8 | 该分区的属性标志 |  
| 38~7F | 72 | UTF-16LE编码的人类可读的分区名称,最大32个字符。 |  注意,扇区尺寸不能假定为512字节,也就是说,一个扇区内可能存放4个以上的分区项,也可能只存放一个分区项的一部分。也就是说,除了头两个扇区(LBA 0 和 LBA 1)之外,GPT规范仅定义了数据结构的尺寸,而不关心使用多少个扇区进行存储。
 
 
分区类型
| 相关操作系统 | GUID[little endian] | 含义 |  
| None | 00000000-0000-0000-0000-000000000000 | 未使用 |  
| None | 024DEE41-33E7-11D3-9D69-0008C781F39F | MBR分区表 |  
| None | C12A7328-F81F-11D2-BA4B-00A0C93EC93B | EFI系统分区[EFI System partition (ESP)] |  
| None | 21686148-6449-6E6F-744E-656564454649 | BIOS引导分区,其对应的ASCII字符串是"Hah!IdontNeedEFI"。 |  
| None | D3BFE2DE-3DAF-11DF-BA40-E3A556D89593 | Intel Fast Flash (iFFS) partition (for Intel Rapid Start technology) |  
| Windows | E3C9E316-0B5C-4DB8-817D-F92DF00215AE | 微软保留分区 |  
| Windows | EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 | 基本数据分区 |  
| Windows | DE94BBA4-06D1-4D40-A16A-BFD50179D6AC | Windows恢复环境 |  
| Linux | 0FC63DAF-8483-4772-8E79-3D69D8477DE4 | 数据分区。Linux曾经使用和Windows基本数据分区相同的GUID。 这个新的GUID是由 GPT fdisk 和 GNU Parted 开发者根据Linux传统的"8300"分区代码发明的。
 |  
| Linux | A19D880F-05FC-4D3B-A006-743F0F84911E | RAID分区 |  
| Linux | 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F | 交换分区 |  
| Linux | E6D6D379-F507-44C2-A23C-238F2A3DF928 | 逻辑卷管理器(LVM)分区 |  
| Linux | 8DA63339-0007-60C0-C436-083AC8230908 | 保留 |  Microsoft还进一步对分区的属性进行了细分:低位4字节表示与分区类型无关的属性,高位4字节表示与分区类型有关的属性。Microsoft目前使用了下列属性: 
分区属性
 
| Bit | 解释 |  
| 0 | 系统分区(磁盘分区工具必须将此分区保持原样,不得做任何修改) |  
| 1 | EFI隐藏分区(EFI不可见分区) |  
| 2 | 传统的BIOS的可引导分区标志 |  
| 60 | 只读 |  
| 62 | 隐藏 |  
| 63 | 不自动挂载,也就是不自动分配盘符 |  
GPT分区表项的格式
| 起始字节 | 长度 | 内容 |  
| 0 | 16字节 | 分区类型GUID |  
| 16 | 16字节 | 分区GUID |  
| 32 | 8字节 | 起始LBA(小端格式) |  
| 40 | 8字节 | 末尾LBA |  
| 48 | 8字节 | 属性标签(如:60表示"只读") |  
| 56 | 72字节 | 分区名(可以包括36个UTF-16(小端格式)字符) |    Windows操作系统支持 能在所有基于x64平台上用作存储卷,包括运行Windows XP Professional x64 Edition的平台。从Windows Server 2003 SP1开始,GPT磁盘也可用作基于x86的Windows平台上的存储卷。 可用作基于x64的Windows 7、Windows Vista和Windows Server 2008版本上的引导卷。从Windows Server 2003 SP1开始,GPT磁盘也可用作基于Itanium的系统上的引导卷。 尽管GPT规范对分区数量几乎没有限制。但是,Windows实现限制的分区数量为128个。GPT中的分区项的保留空间大小会限制分区数量。对于Windows Server 2003 SP1、Windows XP x64版本及更新的版本,支持的最大原始分区为18EB。(Windows文件系统目前的限制为每个256TB)。 
32位Windows GPT支持状况一览
| 操作系统版本 | 发行日期 | 平台 | 读写支持 | 启动支持 | 备注 |  
| Windows XP | 2001-10-25 | IA-32 | 否 | 否 | - |  
| Windows Server 2003 | 2003-04-24 | IA-32 | 否 | 否 | - |  
| Windows Server 2003 SP1 | 2005-03-30 | IA-32 | 是 | 否 | 混合硬盘1中优先使用MBR |  
| Windows Vista | 2006-07-22 | IA-32 | 是 | 否 | 混合硬盘中优先使用MBR |  
| Windows Server 2008 | 2008-02-27 | IA-32 | 是 | 否 | 混合硬盘中优先使用MBR |  
| Windows 7 | 2009-10-22 | IA-32 | 是 | 否 | 混合硬盘中优先使用MBR |  
| Windows 8 | 2012-08-01 | IA-32 | 是 | 否 | 混合硬盘中优先使用MBR |  
64位Windows GPT支持状况一览
| 操作系统版本 | 发行日期 | 平台 | 读写支持 | 启动支持 | 备注 |  
| Windows XP Professional x64 Edition Windows Server 2003 | 2005-04-25 | x64 | 是 | 否 | 混合硬盘中优先使用MBR |  
| Windows Server 2003 | 2005-04-25 | IA-64 | 是 | 是 | 混合硬盘中优先使用MBR |  
| Windows Vista | 2006-07-22 | x64 | 是 | 需要UEFI | 混合硬盘中优先使用MBR |  
| Windows Server 2008 | 2008-02-27 | x64 | 是 | 需要UEFI | 混合硬盘中优先使用MBR |  
| Windows Server 2008 | 2008-02-27 | IA-64 | 是 | 是 | 混合硬盘中优先使用MBR |  
| Windows 7 Windows Server 2008 R2 | 2009-10-22 | x64 | 是 | 需要UEFI | 混合硬盘中优先使用MBR. |  
| Windows Server 2008 R2 | 2009-10-22 | IA-64 | 是 | 是 | 混合硬盘中优先使用MBR |  
| Windows 8 Windows Server 2012 | 2012-08-01 | x64 | 是 | 需要UEFI | 混合硬盘中优先使用MBR. |  注1:此处混合硬盘指MBR/GPT混合硬盘。 Mac OS XMac OS X 10.4或者更高的版本都支持挂载GPT磁盘。 使用英特尔架构的苹果机也使用GPT。 LinuxLinux内核必须提供GPT支持,以便对磁盘分区上的数据提供访问。幸运的是,长久以来,Linux一直包含这种支持。 分区类型GUID
| 操作系统 | 分区类型 | GUID |  
| 无 | EFI文件系统(标准) | C12A7328-F81F-11D2-BA4B-00A0C93EC93B |  
| Windows | 微软保留分区 | E3C9E316-0B5C-4DB8-817D-F92DF00215AE |  
| 基本数据分区 | EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 |  
| 逻辑软盘管理工具元数据分区 | 5808C8AA-7E8F-42E0-85D2-E1E90434CFB3 |  
| 逻辑软盘管理工具数据分区 | AF9B60A0-1431-4F62-BC68-3311714A69AD |  
| Mac OS X | HFS+分区 | 48465300-0000-11AA-AA11-00306543ECAC |  
| UFS | 55465300-0000-11AA-AA11-00306543ECAC |  
| 启动分区 | 426F6F74-0000-11AA-AA11-00306543ECAC |  
| RAID分区 | 52414944-0000-11AA-AA11-00306543ECAC |  
| RAID分区(Offline) | 52414944-5F4F-11AA-AA11-00306543ECAC |  
| 标签 | 4C616265-6C00-11AA-AA11-00306543ECAC |  
| ChromeOS | Linux数据(标准) | EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 |  
| ChromeOS内核 | FE3A2A5D-4F32-41A7-B725-ACCC3285A309 |  
| ChromeOS根文件系统 | 3CB8E202-3B7E-47DD-8A3C-7FF2A13CFCEC |  
| ChromeOS固件 | CAB6E88E-ABF3-4102-A07A-D4BB9BE3C1D3 |  
| ChromeOS将来使用 | 2E0A753D-9E48-43B0-8337-B15192CB1B5E |   
 |