HOME> 东京世界杯> GUID磁碟分割表

GUID磁碟分割表

东京世界杯 2025-05-30 01:18:05
此条目序言章节没有充分总结全文内容要点。 (2020年3月8日)请考虑扩充序言,清晰概述条目所有重點。请在条目的讨论页讨论此问题。 GUID磁碟...

此条目序言章节没有充分总结全文内容要点。 (2020年3月8日)请考虑扩充序言,清晰概述条目所有重點。请在条目的讨论页讨论此问题。

GUID磁碟分割表(英語:GUID Partition Table,缩写:GPT)是使用全局唯一标识符(GUID,也称通用唯一标识符)对物理计算机存储设备(例如硬盘驱动器或固态驱动器)的分区表进行布局的标准。作为统一可扩展固件接口(UEFI)标准的一部分(统一可扩展固件接口论坛建议其為個人電腦BIOS的替代品),由于主引导记录(MBR)分区表的限制,它也被用在一些BIOS。MBR分区表使用32位用于传统512字节磁盘扇区的邏輯區塊位址(LBA)。

对于那些扇区为512字节的磁盘,MBR分区表不支持容量大于2.2 TB(2.2×1012字节)[1]的分区。然而,一些硬盘制造商(诸如希捷和西部数据)注意到这个局限性,并且将他们的容量较大的磁盘升级到4 KiB的扇区,这意味着MBR的有效容量上限提升到16 TiB。 这个看似“正确的”解决方案,在临时地降低人们对改进磁盘分配表的需求的同时,也给市场带来关于在有较大的块(block)的设备上从BIOS启动时,如何最佳的划分磁盘分区的困惑。GPT分配64位给逻辑块地址,因而使得最大分区大小在264-1个扇区成为可能。对于每个扇区大小为512字节的磁盘,那意味着可以有9.4 ZB(9.4×1021字节=18,446,744,073,709,551,615(264-1)个扇区 × 512字节每扇区)的最大空间[1][2]。

截止至2010年,大多数操作系统对GPT均有所支持,尽管包括Mac OS X和Windows在内的一些仅支持在EFI基础上自GPT分区启动,见#操作系统支持。

GPT分区表的结构。此例中,每个逻辑块(LBA)为512字节,每个分区的记录为128字节。负数的LBA地址表示从最后的块开始倒数,−1表示最后一个块。

目录

1 特点

2 传统MBR (LBA 0)

3 分区表头(LBA 1)

4 分区表项(LBA 2–33)

5 操作系统支持

5.1 类Unix操作系统

5.2 32位Windows

5.3 64位Windows

6 分区类型GUID

7 MBR与GPT互相转换

7.1 Windows操作系统

8 参见

9 外部链接

10 备注

11 参考资料

特点

编辑

在MBR硬盘中,分区信息直接存储于主引导记录(MBR)中(主引导记录中还存储着系统的引导程序)。但在GPT硬盘中,分区表的位置信息储存在GPT头中。但出于兼容性考虑,硬盘的第一个扇区仍然用作MBR,之后才是GPT头。

跟现代的MBR一样,GPT也使用逻辑区块位址(LBA)取代了早期的CHS寻址方式。传统MBR信息存储于LBA 0,GPT头存储于LBA 1,接下来才是分区表本身。64位Windows操作系统使用16,384字节(或32扇区)作为GPT分区表,接下来的LBA 34是硬盘上第一个分区的开始。

苹果公司曾经警告说:[3]“不要假定所有设备的块大小都是512字节。”一些现代的存储设备如固态硬盘可能使用1024, 2048或4096扇区。[4]

使用英特尔架构的苹果机也使用GPT。

为了减少分区表损坏的风险,GPT在硬盘最后保存了一份分区表的副本。

传统MBR (LBA 0)

编辑

在GPT分区表的最开头,出于兼容性考虑仍然存储了一份传统的MBR,用来防止不支持GPT的硬盘管理工具错误识别并破坏硬盘中的数据,这个MBR也叫做保护MBR。在支持从GPT启动的操作系统中,这里也用于存储第一阶段的启动代码。在这个MBR中,只有一个标识为0xEE的分区,以此来表示这块硬盘使用GPT分区表。不能识别GPT硬盘的操作系统通常会识别出一个未知类型的分区,并且拒绝对硬盘进行操作,除非用户特别要求删除这个分区。这就避免了意外删除分区的危险。另外,能够识别GPT分区表的操作系统会检查保护MBR中的分区表,如果分区类型不是0xEE或者MBR分区表中有多个项,也会拒绝对硬盘进行操作。

在使用MBR/GPT混合分区表的硬盘中,这部分存储了GPT分区表的一部分分区(通常是前四个分区),可以使不支持从GPT启动的操作系统从这个MBR启动,启动后只能操作MBR分区表中的分区。如早期Boot Camp就是使用这种方式启动Windows 7。

分区表头(LBA 1)

编辑

分区表头定义了硬盘的可用空间以及组成分区表的项的大小和数量。在使用64位Windows Server 2003的机器上,最多可以创建128个分区,即分区表中保留了128个项,其中每个都是128字节。(EFI标准要求分区表最小要有16,384字节,即128个分区项的大小)

分区表头还记录了这块硬盘的GUID,记录了分区表头本身的位置和大小(位置总是在LBA 1)以及备份分区表头和分区表的位置和大小(在硬盘的最后)。它还储存着它本身和分区表的CRC32校验。固件、引导程序和操作系统在启动时可以根据这个校验值来判断分区表是否出错,如果出错了,可以使用软件从硬盘最后的备份GPT中恢复整个分区表,如果备份GPT也校验错误,硬盘将不可使用。所以GPT硬盘的分区表不可以直接使用16进制编辑器修改。

分区表头的格式

起始字节

长度

内容

0

8字节

签名("EFI PART", 45 46 49 20 50 41 52 54)

8

4字节

修订(在1.0版中,值是00 00 01 00)

12

4字节

分区表头的大小(单位是字节,通常是92字节,即5C 00 00 00)

16

4字节

分区表头(第0-91字节)的CRC32校验,在计算时,把这个字段作为0处理,需要计算出分区序列的CRC32校验后再计算本字段

20

4字节

保留,必须是0

24

8字节

当前LBA(这个分区表头的位置)

32

8字节

备份LBA(另一个分区表头的位置)

40

8字节

第一个可用于分区的LBA(主分区表的最后一个LBA + 1)

48

8字节

最后一个可用于分区的LBA(备份分区表的第一个LBA − 1)

56

16字节

硬盘GUID(在类UNIX系统中也叫UUID)

72

8字节

分区表项的起始LBA(在主分区表中是2)

80

4字节

分区表项的数量

84

4字节

一个分区表项的大小(通常是128)

88

4字节

分区序列的CRC32校验

92

*

保留,剩余的字节必须是0(对于512字节LBA的硬盘即是420个字节)

主分区表和备份分区表的头分别位于硬盘的第二个扇区(LBA 1)以及硬盘的最后一个扇区。备份分区表头中的信息是关于备份分区表的。

分区表项(LBA 2–33)

编辑

GPT分区表使用简单而直接的方式表示分区。一个分区表项的前16字节是分区类型GUID。例如,EFI系统分区的GUID类型是{C12A7328-F81F-11D2-BA4B-00A0C93EC93B}。接下来的16字节是该分区唯一的GUID(这个GUID指的是该分区本身,而之前的GUID指的是该分区的类型)。再接下来是分区起始和末尾的64位LBA编号,以及分区的名字和属性。

GPT分区表项的格式

起始字节

长度

内容

0

16字节

分区类型GUID

16

16字节

分区GUID

32

8字节

起始LBA(小端序)

40

8字节

末尾LBA

48

8字节

属性标签(如:60表示“只读”)

56

72字节

分区名(可以包括36个UTF-16(小端序)字符)

操作系统支持

编辑

参见:UEFI:磁盘设备兼容性

类Unix操作系统

编辑

操作系统

版本

平台

读写支持

启动支持

备注

FreeBSD

7.0以后

IA-32、x86-64、ARM

在MBR/GPT混合硬盘中,可以同时使用GPT和MBR分区标识。

Linux

大多数x86架构的Linux发行版

Fedora 8+、Ubuntu 8.04+[5]

IA-32、x86-64

诸如gdisk、GNU Parted、[6][7]util-linux v2.23+ fdisk、[8][9]SYSLINUX、安装补丁后的GRUB 0.96和GRUB 2等新工具均已支持GPT。

macOS

10.4.0以后(一些功能要到10.4.6以后)[10]

IA-32、x86-64、PowerPC、Apple芯片

只有搭载英特尔芯片和Apple芯片的计算机支持GPT启动。

MidnightBSD

0.4-CURRENT以后

IA-32、x86-64

需要CSM

在MBR/GPT混合硬盘中,可以同时使用GPT和MBR分区标识。

Solaris

Solaris 10以后

IA-32、x86-64、SPARC

[11]

HP-UX

HP-UX 11.20以后

IA-64

[12]

32位Windows

编辑

Microsoft Windows历代32位版本的GPT支持详情[13]

系统版本

发售日期

平台

读写支持

启动支持

备注

Windows XP

2001-10-25

IA-32

Windows Server 2003

2003-04-24

IA-32

Windows Server 2003 SP1

2005-03-30

IA-32

在MBR/GPT混合硬盘中优先使用MBR。

Windows Vista

2006-07-22

IA-32

在MBR/GPT混合硬盘中优先使用MBR。

Windows Server 2008

2008-02-27

IA-32

在MBR/GPT混合硬盘中优先使用MBR。

Windows 7

2009-10-22

IA-32

在MBR/GPT混合硬盘中优先使用MBR。

Windows 8

2012-08-01

IA-32

需要UEFI[14]

在MBR/GPT混合硬盘中优先使用MBR。

Windows 8.1

2013-08-27

IA-32

需要UEFI[14]

在MBR/GPT混合硬盘中优先使用MBR。

Windows 10

2015-07-29

IA-32

需要UEFI[14]

在MBR/GPT混合硬盘中优先使用MBR。

64位Windows

编辑

Microsoft Windows历代64位版本的GPT支持详情[13]

系统版本

发售日期

平台

读写支持

启动支持

备注

Windows XP Professional x64 EditionWindows Server 2003

2005-04-25[15]

x64

在MBR/GPT混合硬盘中优先使用MBR。

Windows Server 2003

2005-04-25

IA-64

在MBR/GPT混合硬盘中优先使用MBR。

Windows Vista

2006-07-22

x64

需要UEFI[a]

在MBR/GPT混合硬盘中优先使用MBR。

Windows Server 2008

2008-02-27

x64

需要UEFI

在MBR/GPT混合硬盘中优先使用MBR。

Windows Server 2008

2008-02-27

IA-64

在MBR/GPT混合硬盘中优先使用MBR。

Windows 7

2009-10-22

x64

需要UEFI[b]

在MBR/GPT混合硬盘中优先使用MBR。

Windows Server 2008 R2

2009-10-22

IA-64

在MBR/GPT混合硬盘中优先使用MBR。

Windows 8Windows Server 2012

2012-08-01

x64

需要UEFI[14]

在MBR/GPT混合硬盘中优先使用MBR。

Windows 8.1

2013-08-27

x64

需要UEFI[14]

在MBR/GPT混合硬盘中优先使用MBR。

Windows 10

2015-07-29

x64

需要UEFI[14]

在MBR/GPT混合硬盘中优先使用MBR。

Windows Server 2016

2016-10-12

x64

需要UEFI[14]

在MBR/GPT混合硬盘中优先使用MBR。

Windows 11

2021-10-05

x64、ARM64

在MBR/GPT混合硬盘中优先使用MBR。

分区类型GUID

编辑

相關操作系統

分区类型

GUID[1]

(None)

未使用

00000000-0000-0000-0000-000000000000

MBR分区表

024DEE41-33E7-11D3-9D69-0008C781F39F

EFI系统分区

C12A7328-F81F-11D2-BA4B-00A0C93EC93B

BIOS引导分区

21686148-6449-6E6F-744E-656564454649

Windows

微软保留分区

E3C9E316-0B5C-4DB8-817D-F92DF00215AE

基本数据分区[2]

EBD0A0A2-B9E5-4433-87C0-68B6B72699C7

逻辑软盘管理工具元数据分区

5808C8AA-7E8F-42E0-85D2-E1E90434CFB3

逻辑软盘管理工具数据分区

AF9B60A0-1431-4F62-BC68-3311714A69AD

Windows恢复环境

DE94BBA4-06D1-4D40-A16A-BFD50179D6AC

IBM通用并行文件系统(GPFS)分区

37AFFC90-EF7D-4e96-91C3-2D7AE055B174

HP-UX

数据分区

75894C1E-3AEB-11D3-B7C1-7B03A0000000

服务分区

E2A1E728-32E3-11D6-A682-7B03A0000000

Linux

数据分区[2]

EBD0A0A2-B9E5-4433-87C0-68B6B72699C7

RAID分区

A19D880F-05FC-4D3B-A006-743F0F84911E

交换分区

0657FD6D-A4AB-43C4-84E5-0933C84B4F4F

邏輯捲軸管理員(LVM)分区

E6D6D379-F507-44C2-A23C-238F2A3DF928

保留

8DA63339-0007-60C0-C436-083AC8230908

FreeBSD

启动分区

83BD6B9D-7F41-11DC-BE0B-001560B84F0F

数据分区

516E7CB4-6ECF-11D6-8FF8-00022D09712B

交换分区

516E7CB5-6ECF-11D6-8FF8-00022D09712B

UFS分区

516E7CB6-6ECF-11D6-8FF8-00022D09712B

Vinum volume manager(英语:Vinum volume manager)分区

516E7CB8-6ECF-11D6-8FF8-00022D09712B

ZFS分区

516E7CBA-6ECF-11D6-8FF8-00022D09712B

macOSDarwin

HFS (HFS+) 分区

48465300-0000-11AA-AA11-00306543ECAC

Apple UFS 容器

55465300-0000-11AA-AA11-00306543ECAC

APFS 卷宗容器APFS 型 FileVault 卷宗容器

7C3457EF-0000-11AA-AA11-00306543ECAC

ZFS[c]

6A898CC3-1DD2-11B2-99A6-080020736631

Apple RAID 分区

52414944-0000-11AA-AA11-00306543ECAC

Apple RAID 离线分区

52414944-5F4F-11AA-AA11-00306543ECAC

Apple 开机卷宗 (恢复模式)

426F6F74-0000-11AA-AA11-00306543ECAC

Apple 卷标

4C616265-6C00-11AA-AA11-00306543ECAC

Apple TV 恢复分区

5265636F-7665-11AA-AA11-00306543ECAC

Apple Core Storage 卷宗容器 HFS+ 型 FileVault 卷宗容器

53746F72-6167-11AA-AA11-00306543ECAC

SoftRAID_Status

B6FA30DA-92D2-4A9A-96F1-871EC6486200

SoftRAID_Scratch

2E313465-19B9-463F-8126-8A7993773801

SoftRAID_Volume

FA709C7E-65B1-4593-BFD5-E71D61DE9B02

SoftRAID_Cache

BBBA6DF5-F46F-4A89-8F59-8765B2727503

Solaris

启动分区

6A82CB45-1DD2-11B2-99A6-080020736631

根分区

6A85CF4D-1DD2-11B2-99A6-080020736631

交换分区

6A87C46F-1DD2-11B2-99A6-080020736631

备份分区

6A8B642B-1DD2-11B2-99A6-080020736631

/usr分区[3]

6A898CC3-1DD2-11B2-99A6-080020736631

/var分区

6A8EF2E9-1DD2-11B2-99A6-080020736631

/home分区

6A90BA39-1DD2-11B2-99A6-080020736631

备用扇区

6A9283A5-1DD2-11B2-99A6-080020736631

保留分区

6A945A3B-1DD2-11B2-99A6-080020736631

6A9630D1-1DD2-11B2-99A6-080020736631

6A980767-1DD2-11B2-99A6-080020736631

6A96237F-1DD2-11B2-99A6-080020736631

6A8D2AC7-1DD2-11B2-99A6-080020736631

NetBSD[4]

交换分区

49F48D32-B10E-11DC-B99B-0019D1879648

FFS分区

49F48D5A-B10E-11DC-B99B-0019D1879648

LFS(英语:Log-structured File System (BSD))分区

49F48D82-B10E-11DC-B99B-0019D1879648

RAID分区

49F48DAA-B10E-11DC-B99B-0019D1879648

concatenated分区

2DB519C4-B10F-11DC-B99B-0019D1879648

加密分区

2DB519EC-B10F-11DC-B99B-0019D1879648

^ 本表中的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部分的字節序被交換了。

a b Linux和Windows的数据分区使用相同的GUID。

a b Solaris系统中/usr分区的GUID在Mac OS X上被用作普通的ZFS分区。

^ 具体定义见src/sys/sys/disklabel_gpt.h(页面存档备份,存于互联网档案馆)。NetBSD的GUID在单独定义之前曾经使用过FreeBSD的GUID。

MBR与GPT互相转换

编辑

Windows操作系统

编辑

在Win10 1703及更高版本,执行命令“mbr2gpt /convert /disk:盘号 /allowfullos”

或者使用DiskGenius等軟件將MBR轉換為GPT。

参见

编辑

主引导记录

GUID

硬盘分区

可扩展固件接口

BIOS

外部链接

编辑

Microsoft TechNet: Disk Sectors on GPT Disks

Microsoft TechNet: Using GPT Drives on x86-64 Systems(页面存档备份,存于互联网档案馆)

Apple Developer Connection: Secrets of the GPT (页面存档备份,存于互联网档案馆)

Make the most of large drives with GPT and Linux (页面存档备份,存于互联网档案馆)

GPT fdisk : Information on Hybrid GPT-MBR, Converting MBR and BSD disklabels to GPT and Booting from GPT disks (页面存档备份,存于互联网档案馆)

Microsoft : FAQs on Using GPT disks in Windows(页面存档备份,存于互联网档案馆)

A forum post describing steps to modify existing Windows x64 BIOS-MBR based installations to boot from UEFI-GPT

备注

编辑

^ 仅SP1、SP2

^ 在多硬盘启动环境下,非UEFI引导需要MBR格式的引导程序(启动分区);系统分区可使用GPT格式。

^ Solaris 的/usr的 GUID 也用作 macOS 的 ZFS 通用 GUID。

参考资料

编辑

^ 1.0 1.1 FAQ: Drive Partition Limits (PDF). UEFI Forum. [TEXT]. (原始内容 (pdf)存档于2013-03-22). 请检查|access-date=中的日期值 (帮助)

^ Bill Boswell. FAQ: Drive Partition Limits. Redmondmag.com. 2002-07-01 [ZPT]. (原始内容存档于2010-10-01). GPT disks also support very large partitions thanks to a 64-bit Logical Block Address scheme. A logical block corresponds to one sector, or 512 bytes, yielding a maximum theoretical capacity of eight zettabytes, 请检查|access-date=中的日期值 (帮助)

^ Technical Note TN2166: Secrets of the GPT. Apple. [2010-06-25]. (原始内容存档于2008-05-18).

^ Western Digital’s Advanced Format: The 4K Sector Transition Begins. Anandtech. [2010-06-25]. (原始内容存档于2010-03-23).

^ Ubuntu on MacBook. Ubuntu Community Documentation. [2010-06-25]. (原始内容存档于2021-01-29).

^ GNU Parted FAQ. [2017-09-22]. (原始内容存档于2020-08-09).

^ mklabel - GNU Parted Manual. [2017-09-22]. (原始内容存档于2020-02-20).

^ fdisk: add GPT support. kernel.org. 2013-09-27 [2013-10-18]. (原始内容存档于2017-02-22).

^ Davidlohr Bueso. fdisk updates and GPT support. 2013-09-28 [2013-10-18]. (原始内容存档于2013-10-19).

^ Myths and Facts About Intel Macs. rEFIt. [2010-06-25]. (原始内容存档于2019-04-21).

^ Booting from a ZFS Root File System. [2017-09-22]. (原始内容存档于2020-04-22).

^ idisk(1M) (PDF). Hewlett-Packard. [永久失效連結]

^ 13.0 13.1 Windows and GPT FAQ. Microsoft. [2017-09-22]. (原始内容存档于2017-09-22).

^ 14.0 14.1 14.2 14.3 14.4 14.5 14.6 32位Windows 8支持通过UEFI从GPT硬盘启动。. [2017-09-22]. (原始内容存档于2017-09-22).

^ Microsoft raises the speed limit with the availability of 64-bit editions of Windows Server 2003 and Windows XP Professional. [2017-09-22]. (原始内容存档于2010-11-10).