GUID Partition Table

Last updated
The layout of a disk with the GUID Partition Table. In this example, each logical block is 512 bytes in size and each entry has 128 bytes. The corresponding partition entries are assumed to be located in LBA 2-33. Negative LBA addresses indicate a position from the end of the volume, with -1 being the last addressable block. GUID Partition Table Scheme.svg
The layout of a disk with the GUID Partition Table. In this example, each logical block is 512 bytes in size and each entry has 128 bytes. The corresponding partition entries are assumed to be located in LBA 2–33. Negative LBA addresses indicate a position from the end of the volume, with −1 being the last addressable block.

The GUID Partition Table (GPT) is a standard for the layout of partition tables of a physical computer storage device, such as a hard disk drive or solid-state drive, using universally unique identifiers (UUIDs), which are also known as globally unique identifiers (GUIDs). Forming a part of the Unified Extensible Firmware Interface (UEFI) standard (Unified EFI Forum-proposed replacement for the PC BIOS), it is nevertheless also used for some BIOSs, because of the limitations of master boot record (MBR) partition tables, which use 32 bits for logical block addressing (LBA) of traditional 512-byte disk sectors.

Contents

All modern personal computer operating systems support GPT. Some, including macOS and Microsoft Windows on the x86 architecture, support booting from GPT partitions only on systems with EFI firmware, but FreeBSD and most Linux distributions can boot from GPT partitions on systems with either the BIOS or the EFI firmware interface.

History

The Master Boot Record (MBR) partitioning scheme, widely used since the early 1980s, imposed limitations for use of modern hardware. The available size for block addresses and related information is limited to 32 bits. For hard disks with 512byte sectors, the MBR partition table entries allow a maximum size of 2  TiB (2³² × 512bytes) or 2.20  TB (2.20 × 10¹² bytes). [1]

In the late 1990s, Intel developed a new partition table format as part of what eventually became the Unified Extensible Firmware Interface (UEFI). The GUID Partition Table is specified in chapter 5 of the UEFI 2.8 specification. [2] GPT uses 64 bits for logical block addresses, allowing a maximum disk size of 264 sectors. For disks with 512byte sectors, the maximum size is 8  ZiB (264 × 512bytes) or 9.44  ZB (9.44 × 10²¹ bytes). [1] For disks with 4,096byte sectors the maximum size is 64  ZiB (264 × 4,096bytes) or 75.6  ZB (75.6 × 10²¹ bytes).

In 2010, hard-disk manufacturers introduced drives with 4,096byte sectors (Advanced Format). [3] For compatibility with legacy hardware and software, those drives include an emulation technology (512e) that presents 512byte sectors to the entity accessing the hard drive, despite their underlying 4,096byte physical sectors. [4] Performance could be degraded on write operations, when the drive is forced to perform two read-modify-write operations to satisfy a single misaligned 4,096byte write operation. [4] Since April 2014, enterprise-class drives without emulation technology (4K native) have been available on the market. [5] [6]

Readiness of the support for 4 KB logical sectors within operating systems differs among their types, vendors and versions. [7] For example, Microsoft Windows supports 4K native drives since Windows 8 and Windows Server 2012 (both released in 2012) in UEFI. [8]

Features

Like MBR, GPT uses logical block addressing (LBA) in place of the historical cylinder-head-sector (CHS) addressing. The protective MBR is stored at LBA 0, and the GPT header is in LBA 1, with a backup GPT header stored at the final LBA. The GPT header has a pointer to the partition table (Partition Entry Array), which is typically at LBA 2. Each entry on the partition table has a size of 128 bytes. The UEFI specification stipulates that a minimum of 16,384 bytes, regardless of sector size, are allocated for the Partition Entry Array. [9] Thus, on a disk with 512-byte sectors, at least 32 sectors are used for the Partition Entry Array, and the first usable block is at LBA 34 or higher, while on a 4,096-byte sectors disk, at least 4 sectors are used for the Partition Entry Array, and the first usable block is at LBA 6 or higher.

MBR variants

Protective MBR (LBA 0)

For limited backward compatibility, the space of the legacy Master Boot Record (MBR) is still reserved in the GPT specification, but it is now used in a way that prevents MBR-based disk utilities from misrecognizing and possibly overwriting GPT disks. This is referred to as a protective MBR. [10]

A single partition of type EEh , encompassing the entire GPT drive (where "entire" actually means as much of the drive as can be represented in an MBR), is indicated and identifies it as GPT. Operating systems and tools which cannot read GPT disks will generally recognize the disk as containing one partition of unknown type and no empty space, and will typically refuse to modify the disk unless the user explicitly requests and confirms the deletion of this partition. This minimizes accidental erasures. [10] Furthermore, GPT-aware OSes may check the protective MBR and if the enclosed partition type is not of type EEh or if there are multiple partitions defined on the target device, the OS may refuse to manipulate the partition table. [11]

If the actual size of the disk exceeds the maximum partition size representable using the legacy 32-bit LBA entries in the MBR partition table, the recorded size of this partition is clipped at the maximum, thereby ignoring the rest of the disk. This amounts to a maximum reported size of 2 TiB, assuming a disk with 512 bytes per sector (see 512e). It would result in 16 TiB with 4 KiB sectors (4Kn), but since many older operating systems and tools are hard coded for a sector size of 512 bytes or are limited to 32-bit calculations, exceeding the 2 TiB limit could cause compatibility problems. [10]

Hybrid MBR (LBA 0 + GPT)

In operating systems that support GPT-based boot through BIOS services rather than EFI, the first sector may also still be used to store the first stage of the bootloader code, but modified to recognize GPT partitions. The bootloader in the MBR must not assume a sector size of 512 bytes. [10]

Partition table header (LBA 1)

GPT header format
OffsetLengthContents
0 (0x00)8 bytesSignature ("EFI PART", 45h 46h 49h 20h 50h 41h 52h 54h or 0x5452415020494645ULL [lower-alpha 1] on little-endian machines)
8 (0x08)4 bytesRevision number of header - 1.0 (00h 00h 01h 00h) for UEFI 2.10
12 (0x0C)4 bytesHeader size in little endian (in bytes, usually 5Ch 00h 00h 00h or 92 bytes)
16 (0x10)4 bytes CRC32 of header (offset +0 to +0x5b) in little endian, with this field zeroed during calculation
20 (0x14)4 bytesReserved; must be zero
24 (0x18)8 bytesCurrent LBA (location of this header copy)
32 (0x20)8 bytesBackup LBA (location of the other header copy)
40 (0x28)8 bytesFirst usable LBA for partitions (primary partition table last LBA + 1)
48 (0x30)8 bytesLast usable LBA (secondary partition table first LBA − 1)
56 (0x38)16 bytesDisk GUID in mixed endian [11]
72 (0x48)8 bytesStarting LBA of array of partition entries (usually 2 for compatibility)
80 (0x50)4 bytesNumber of partition entries in array
84 (0x54)4 bytesSize of a single partition entry (usually 80h or 128)
88 (0x58)4 bytesCRC32 of partition entries array in little endian
92 (0x5C)*Reserved; must be zeroes for the rest of the block (420 bytes for a sector size of 512 bytes; but can be more with larger sector sizes)

The partition table header defines the usable blocks on the disk. It also defines the number and size of the partition entries that make up the partition table (offsets 80 and 84 in the table). [2] :119

Partition entries (LBA 2–33)

GUID partition entry format
OffsetLengthContents
0 (0x00)16 bytes Partition type GUID (mixed endian [11] )
16 (0x10)16 bytesUnique partition GUID (mixed endian)
32 (0x20)8 bytesFirst LBA (little endian)
40 (0x28)8 bytesLast LBA (inclusive, usually odd)
48 (0x30)8 bytesAttribute flags (e.g. bit 60 denotes read-only)
56 (0x38)72 bytesPartition name (36 UTF-16LE code units)

After the primary header and before the backup header, the Partition Entry Array describes partitions, using a minimum size of 128 bytes for each entry block. [12] The starting location of the array on disk, and the size of each entry, are given in the GPT header. The first 16 bytes of each entry designate the partition type's globally unique identifier (GUID). For example, the GUID for an EFI system partition is C12A7328-F81F-11D2-BA4B-00A0C93EC93B. The second 16 bytes are a GUID unique to the partition. Then follow the starting and ending 64 bit LBAs, partition attributes, and the 36 character (max.) Unicode partition name. As is the nature and purpose of GUIDs and as per RFC 4122, no central registry is needed to ensure the uniqueness of the GUID partition type designators. [13] [2] :2200

The 64-bit partition table attributes are shared between 48-bit common attributes for all partition types, and 16-bit type-specific attributes:

Partition attributes
BitContent
0Platform required (required by the computer to function properly, OEM partition for example, disk partitioning utilities must preserve the partition as is)
1EFI firmware should ignore the content of the partition and not try to read from it
2Legacy BIOS bootable (equivalent to active flag (typically bit 7 set) at offset +0h in partition entries of the MBR partition table) [14]
3–47Reserved for future use
48–63Defined and used by the individual partition type

Microsoft defines the type-specific attributes for basic data partition as: [15] [16]

Basic data partition attributes
BitContent
60Read-only
61Shadow copy (of another partition)
62Hidden
63No drive letter (i.e. do not automount)

Google defines the type-specific attributes for ChromeOS kernel as: [17]

ChromeOS kernel partition attributes
BitContent
56Successful boot flag
55–52Tries remaining
51–48Priority (15: highest, 1: lowest, 0: not bootable)

Operating-system support

UNIX and Unix-like systems

Details of GPT support on UNIX and Unix-like operating systems
OS familyVersion or editionPlatformRead and write supportBoot supportNote
FreeBSD Since 7.0 IA-32, x86-64, ARM YesYesIn a hybrid configuration, both GPT and MBR partition identifiers may be used.
Linux Most of the x86 Linux distributions
Fedora 8+ and Ubuntu 8.04+ [18]
IA-32, x86-64, ARMYesYesTools such as gdisk, GNU Parted, [19] [20] util-linux v2.23+ fdisk, [21] [22] SYSLINUX, GRUB 0.96 + patches and GRUB 2 have been GPT-enabled. Limited to 256 partitions per disk. [23]
macOS Since 10.4.0 (some features since 10.4.6) [24] IA-32, x86-64, PowerPC, Apple silicon YesYesOnly Intel and Apple silicon Macintosh computers can boot from GPT.
MidnightBSD Since 0.4-CURRENTIA-32, x86-64YesRequires CSMIn a hybrid configuration, both GPT and MBR partition identifiers may be used.
NetBSD Since 6.0 [25] IA-32, [26] x86-64, [27] ARMYesYes
OpenBSD Since 5.9IA-32, x86-64, ARMYesYes [28]
Solaris Since Solaris 10IA-32, x86-64, SPARC YesYes [29]
HP-UX Since HP-UX 11.20 IA-64 YesYes [30]

Windows: 32-bit versions

Windows 7 and earlier do not support UEFI on 32-bit platforms, and therefore do not allow booting from GPT partitions. [31]

Details of GPT support on 32-bit editions of Microsoft Windows [31]
OS versionRelease datePlatformRead or write supportBoot supportNote
Windows 9x 1995-08-24 IA-32 No [lower-alpha 2] No
Windows XP 2001-10-25IA-32NoNo
Windows Server 2003 2003-04-24IA-32NoNo
Windows Server 2003 SP1 2005-03-30IA-32YesNo MBR takes precedence in hybrid configuration.
Windows Vista 2006-07-22IA-32YesNoMBR takes precedence in hybrid configuration.
Windows Server 2008 2008-02-27IA-32YesNoMBR takes precedence in hybrid configuration.
Windows 7 2009-10-22IA-32YesNoMBR takes precedence in hybrid configuration.
Windows 8 2012-08-01IA-32YesRequires UEFI [32] MBR takes precedence in hybrid configuration.
Windows 8.1 2013-08-27IA-32YesRequires UEFI [33] MBR takes precedence in hybrid configuration.
Windows 10 2015-07-29IA-32YesRequires UEFI [34] MBR takes precedence in hybrid configuration.

Windows: 64-bit versions

Limited to 128 partitions per disk. [31]

Details of GPT support on 64-bit editions of Microsoft Windows [31]
OS versionRelease datePlatformRead and write supportBoot supportNote
Windows XP 64-Bit Edition for Itanium systems, Version 20022001-10-25 IA-64 YesYes MBR takes precedence in hybrid configuration.
Windows XP 64-Bit Edition, Version 20032003-03-28 IA-64 YesYes MBR takes precedence in hybrid configuration.
Windows XP Professional x64 Edition
Windows Server 2003
2005-04-25 [35] x64 YesNo MBR takes precedence in hybrid configuration.
Windows Server 2003 2005-04-25 IA-64 YesYesMBR takes precedence in hybrid configuration.
Windows Vista 2006-07-22x64YesRequires UEFI [lower-alpha 3] MBR takes precedence in hybrid configuration.
Windows Server 2008 2008-02-27x64YesRequires UEFIMBR takes precedence in hybrid configuration.
Windows Server 2008 2008-02-27IA-64YesYesMBR takes precedence in hybrid configuration.
Windows 7 2009-10-22x64YesRequires UEFI [lower-alpha 4] MBR takes precedence in hybrid configuration.
Windows Server 2008 R2 2009-10-22IA-64YesYesMBR takes precedence in hybrid configuration.
Windows 8
Windows Server 2012
2012-08-01x64YesRequires UEFI [36] MBR takes precedence in hybrid configuration.
Windows 8.1 2013-08-27x64YesRequires UEFI [37] MBR takes precedence in hybrid configuration.
Windows 10 2015-07-29x64YesRequires UEFI [38] MBR takes precedence in hybrid configuration.
Windows Server 2016 2016-10-12x64YesRequires UEFIMBR takes precedence in hybrid configuration.
Windows Server 2019 2018-10-02x64YesRequires UEFIMBR takes precedence in hybrid configuration.
Windows Server 2022 2021-08-18 [39] x64YesRequires UEFIMBR takes precedence in hybrid configuration.
Windows 11 2021-10-05x64, ARM64YesYesUEFI is a system requirement for Windows 11.

Partition type GUIDs

"Partition type GUID" means that each partition type is strictly identified by a GUID number unique to that type, and therefore partitions of the same type will all have the same "partition type GUID". Each partition also has a "partition unique GUID" as a separate entry, which as the name implies is a unique id for each partition.

Operating systemPartition typeGlobally unique identifier (GUID) [lower-alpha 5]
Unused entry00000000-0000-0000-0000-000000000000
MBR partition scheme024DEE41-33E7-11D3-9D69-0008C781F39F
EFI System partition C12A7328-F81F-11D2-BA4B-00A0C93EC93B
BIOS boot partition [lower-alpha 6] 21686148-6449-6E6F-744E-656564454649
Intel Fast Flash (iFFS) partition (for Intel Rapid Start technology) [40] [41] D3BFE2DE-3DAF-11DF-BA40-E3A556D89593
Sony boot partition [lower-alpha 7] F4019732-066E-4E12-8273-346C5641494F
Lenovo boot partition [lower-alpha 7] BFBFAFE7-A34F-448A-9A5B-6213EB736C22
Windows Microsoft Reserved Partition (MSR) [43] E3C9E316-0B5C-4DB8-817D-F92DF00215AE
Basic data partition [43] [lower-alpha 8] EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
Logical Disk Manager (LDM) metadata partition [43] 5808C8AA-7E8F-42E0-85D2-E1E90434CFB3
Logical Disk Manager data partition [43] AF9B60A0-1431-4F62-BC68-3311714A69AD
Windows Recovery Environment [43] DE94BBA4-06D1-4D40-A16A-BFD50179D6AC
IBM General Parallel File System (GPFS) partition37AFFC90-EF7D-4E96-91C3-2D7AE055B174
Storage Spaces partition [45] E75CAF8F-F680-4CEE-AFA3-B001E56EFC2D
Storage Replica partition [46] 558D43C5-A1AC-43C0-AAC8-D1472B2923D1
HP-UX Data partition75894C1E-3AEB-11D3-B7C1-7B03A0000000
Service partitionE2A1E728-32E3-11D6-A682-7B03A0000000
Linux [47] [48] [49] [50] Linux filesystem data [lower-alpha 8] 0FC63DAF-8483-4772-8E79-3D69D8477DE4
RAID partitionA19D880F-05FC-4D3B-A006-743F0F84911E
Root partition (Alpha) [47] 6523F8AE-3EB1-4E2A-A05A-18B695AE656F
Root partition (ARC) [47] D27F46ED-2919-4CB8-BD25-9531F3C16534
Root partition (ARM 32‐bit) [47] 69DAD710-2CE4-4E3C-B16C-21A1D49ABED3
Root partition (AArch64) [47] B921B045-1DF0-41C3-AF44-4C6F280D3FAE
Root partition (IA-64) [47] 993D8D3D-F80E-4225-855A-9DAF8ED7EA97
Root partition (LoongArch 64‐bit) [47] 77055800-792C-4F94-B39A-98C91B762BB6
Root partition (mips: 32‐bit MIPS big‐endian) [47] E9434544-6E2C-47CC-BAE2-12D6DEAFB44C
Root partition (mips64: 64‐bit MIPS big‐endian) [47] D113AF76-80EF-41B4-BDB6-0CFF4D3D4A25
Root partition (mipsel: 32‐bit MIPS little‐endian) [47] 37C58C8A-D913-4156-A25F-48B1B64E07F0
Root partition (mips64el: 64‐bit MIPS little‐endian) [47] 700BDA43-7A34-4507-B179-EEB93D7A7CA3
Root partition (PA-RISC) [47] 1AACDB3B-5444-4138-BD9E-E5C2239B2346
Root partition (32‐bit PowerPC) [47] 1DE3F1EF-FA98-47B5-8DCD-4A860A654D78
Root partition (64‐bit PowerPC big‐endian) [47] 912ADE1D-A839-4913-8964-A10EEE08FBD2
Root partition (64‐bit PowerPC little‐endian) [47] C31C45E6-3F39-412E-80FB-4809C4980599
Root partition (RISC-V 32‐bit) [47] 60D5A7FE-8E7D-435C-B714-3DD8162144E1
Root partition (RISC-V 64‐bit) [47] 72EC70A6-CF74-40E6-BD49-4BDA08E8F224
Root partition (s390) [47] 08A7ACEA-624C-4A20-91E8-6E0FA67D23F9
Root partition (s390x) [47] 5EEAD9A9-FE09-4A1E-A1D7-520D00531306
Root partition (TILE-Gx) [47] C50CDD70-3862-4CC3-90E1-809A8C93EE2C
Root partition (x86) [47] 44479540-F297-41B2-9AF7-D131D5F0458A
Root partition (x86-64) [47] 4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709
/usr partition (Alpha) [47] E18CF08C-33EC-4C0D-8246-C6C6FB3DA024
/usr partition (ARC) [47] 7978A683-6316-4922-BBEE-38BFF5A2FECC
/usr partition (ARM 32‐bit) [47] 7D0359A3-02B3-4F0A-865C-654403E70625
/usr partition (AArch64) [47] B0E01050-EE5F-4390-949A-9101B17104E9
/usr partition (IA-64) [47] 4301D2A6-4E3B-4B2A-BB94-9E0B2C4225EA
/usr partition (LoongArch 64‐bit) [47] E611C702-575C-4CBE-9A46-434FA0BF7E3F
/usr partition (mips: 32‐bit MIPS big‐endian) [47] 773B2ABC-2A99-4398-8BF5-03BAAC40D02B
/usr partition (mips64: 64‐bit MIPS big‐endian) [47] 57E13958-7331-4365-8E6E-35EEEE17C61B
/usr partition (mipsel: 32‐bit MIPS little‐endian) [47] 0F4868E9-9952-4706-979F-3ED3A473E947
/usr partition (mips64el: 64‐bit MIPS little‐endian) [47] C97C1F32-BA06-40B4-9F22-236061B08AA8
/usr partition (PA-RISC) [47] DC4A4480-6917-4262-A4EC-DB9384949F25
/usr partition (32‐bit PowerPC) [47] 7D14FEC5-CC71-415D-9D6C-06BF0B3C3EAF
/usr partition (64‐bit PowerPC big‐endian) [47] 2C9739E2-F068-46B3-9FD0-01C5A9AFBCCA
/usr partition (64‐bit PowerPC little‐endian) [47] 15BB03AF-77E7-4D4A-B12B-C0D084F7491C
/usr partition (RISC-V 32‐bit) [47] B933FB22-5C3F-4F91-AF90-E2BB0FA50702
/usr partition (RISC-V 64‐bit) [47] BEAEC34B-8442-439B-A40B-984381ED097D
/usr partition (s390) [47] CD0F869B-D0FB-4CA0-B141-9EA87CC78D66
/usr partition (s390x) [47] 8A4F5770-50AA-4ED3-874A-99B710DB6FEA
/usr partition (TILE-Gx) [47] 55497029-C7C1-44CC-AA39-815ED1558630
/usr partition (x86) [47] 75250D76-8CC6-458E-BD66-BD47CC81A812
/usr partition (x86-64) [47] 8484680C-9521-48C6-9C11-B0720656F69E
Root verity partition for dm-verity (Alpha) [47] FC56D9E9-E6E5-4C06-BE32-E74407CE09A5
Root verity partition for dm-verity (ARC) [47] 24B2D975-0F97-4521-AFA1-CD531E421B8D
Root verity partition for dm-verity (ARM 32‐bit) [47] 7386CDF2-203C-47A9-A498-F2ECCE45A2D6
Root verity partition for dm-verity (AArch64) [47] DF3300CE-D69F-4C92-978C-9BFB0F38D820
Root verity partition for dm-verity (IA-64) [47] 86ED10D5-B607-45BB-8957-D350F23D0571
Root verity partition for dm-verity (LoongArch 64‐bit) [47] F3393B22-E9AF-4613-A948-9D3BFBD0C535
Root verity partition for dm-verity (mips: 32‐bit MIPS big‐endian) [47] 7A430799-F711-4C7E-8E5B-1D685BD48607
Root verity partition for dm-verity (mips64: 64‐bit MIPS big‐endian) [47] 579536F8-6A33-4055-A95A-DF2D5E2C42A8
Root verity partition for dm-verity (mipsel: 32‐bit MIPS little‐endian) [47] D7D150D2-2A04-4A33-8F12-16651205FF7B
Root verity partition for dm-verity (mips64el: 64‐bit MIPS little‐endian) [47] 16B417F8-3E06-4F57-8DD2-9B5232F41AA6
Root verity partition for dm-verity (PA-RISC) [47] D212A430-FBC5-49F9-A983-A7FEEF2B8D0E
Root verity partition for dm-verity (64‐bit PowerPC little‐endian) [47] 906BD944-4589-4AAE-A4E4-DD983917446A
Root verity partition for dm-verity (64‐bit PowerPC big‐endian) [47] 9225A9A3-3C19-4D89-B4F6-EEFF88F17631
Root verity partition for dm-verity (32‐bit PowerPC) [47] 98CFE649-1588-46DC-B2F0-ADD147424925
Root verity partition for dm-verity (RISC-V 32‐bit) [47] AE0253BE-1167-4007-AC68-43926C14C5DE
Root verity partition for dm-verity (RISC-V 64‐bit) [47] B6ED5582-440B-4209-B8DA-5FF7C419EA3D
Root verity partition for dm-verity (s390) [47] 7AC63B47-B25C-463B-8DF8-B4A94E6C90E1
Root verity partition for dm-verity (s390x) [47] B325BFBE-C7BE-4AB8-8357-139E652D2F6B
Root verity partition for dm-verity (TILE-Gx) [47] 966061EC-28E4-4B2E-B4A5-1F0A825A1D84
Root verity partition for dm-verity (x86-64) [47] 2C7357ED-EBD2-46D9-AEC1-23D437EC2BF5
Root verity partition for dm-verity (x86) [47] D13C5D3B-B5D1-422A-B29F-9454FDC89D76
/usr verity partition for dm-verity (Alpha) [47] 8CCE0D25-C0D0-4A44-BD87-46331BF1DF67
/usr verity partition for dm-verity (ARC) [47] FCA0598C-D880-4591-8C16-4EDA05C7347C
/usr verity partition for dm-verity (ARM 32‐bit) [47] C215D751-7BCD-4649-BE90-6627490A4C05
/usr verity partition for dm-verity (AArch64) [47] 6E11A4E7-FBCA-4DED-B9E9-E1A512BB664E
/usr verity partition for dm-verity (IA-64) [47] 6A491E03-3BE7-4545-8E38-83320E0EA880
/usr verity partition for dm-verity (LoongArch 64‐bit) [47] F46B2C26-59AE-48F0-9106-C50ED47F673D
/usr verity partition for dm-verity (mips: 32‐bit MIPS big‐endian) [47] 6E5A1BC8-D223-49B7-BCA8-37A5FCCEB996
/usr verity partition for dm-verity (mips64: 64‐bit MIPS big‐endian) [47] 81CF9D90-7458-4DF4-8DCF-C8A3A404F09B
/usr verity partition for dm-verity (mipsel: 32‐bit MIPS little‐endian) [47] 46B98D8D-B55C-4E8F-AAB3-37FCA7F80752
/usr verity partition for dm-verity (mips64el: 64‐bit MIPS little‐endian) [47] 3C3D61FE-B5F3-414D-BB71-8739A694A4EF
/usr verity partition for dm-verity (PA-RISC) [47] 5843D618-EC37-48D7-9F12-CEA8E08768B2
/usr verity partition for dm-verity (64‐bit PowerPC little‐endian) [47] EE2B9983-21E8-4153-86D9-B6901A54D1CE
/usr verity partition for dm-verity (64‐bit PowerPC big‐endian) [47] BDB528A5-A259-475F-A87D-DA53FA736A07
/usr verity partition for dm-verity (32‐bit PowerPC) [47] DF765D00-270E-49E5-BC75-F47BB2118B09
/usr verity partition for dm-verity (RISC-V 32‐bit) [47] CB1EE4E3-8CD0-4136-A0A4-AA61A32E8730
/usr verity partition for dm-verity (RISC-V 64‐bit) [47] 8F1056BE-9B05-47C4-81D6-BE53128E5B54
/usr verity partition for dm-verity (s390) [47] B663C618-E7BC-4D6D-90AA-11B756BB1797
/usr verity partition for dm-verity (s390x) [47] 31741CC4-1A2A-4111-A581-E00B447D2D06
/usr verity partition for dm-verity (TILE-Gx) [47] 2FB4BF56-07FA-42DA-8132-6B139F2026AE
/usr verity partition for dm-verity (x86-64) [47] 77FF5F63-E7B6-4633-ACF4-1565B864C0E6
/usr verity partition for dm-verity (x86) [47] 8F461B0D-14EE-4E81-9AA9-049B6FB97ABD
Root verity signature partition for dm-verity (Alpha) [47] D46495B7-A053-414F-80F7-700C99921EF8
Root verity signature partition for dm-verity (ARC)} [47] 143A70BA-CBD3-4F06-919F-6C05683A78BC
Root verity signature partition for dm-verity (ARM 32‐bit) [47] 42B0455F-EB11-491D-98D3-56145BA9D037
Root verity signature partition for dm-verity (AArch64) [47] 6DB69DE6-29F4-4758-A7A5-962190F00CE3
Root verity signature partition for dm-verity (IA-64) [47] E98B36EE-32BA-4882-9B12-0CE14655F46A
Root verity signature partition for dm-verity (LoongArch 64‐bit) [47] 5AFB67EB-ECC8-4F85-AE8E-AC1E7C50E7D0
Root verity signature partition for dm-verity (mips: 32‐bit MIPS big‐endian) [47] BBA210A2-9C5D-45EE-9E87-FF2CCBD002D0
Root verity signature partition for dm-verity (mips64: 64‐bit MIPS big‐endian) [47] 43CE94D4-0F3D-4999-8250-B9DEAFD98E6E
Root verity signature partition for dm-verity (mipsel: 32‐bit MIPS little‐endian) [47] C919CC1F-4456-4EFF-918C-F75E94525CA5
Root verity signature partition for dm-verity (mips64el: 64‐bit MIPS little‐endian) [47] 904E58EF-5C65-4A31-9C57-6AF5FC7C5DE7
Root verity signature partition for dm-verity (PA-RISC) [47] 15DE6170-65D3-431C-916E-B0DCD8393F25
Root verity signature partition for dm-verity (64‐bit PowerPC little‐endian) [47] D4A236E7-E873-4C07-BF1D-BF6CF7F1C3C6
Root verity signature partition for dm-verity (64‐bit PowerPC big‐endian) [47] F5E2C20C-45B2-4FFA-BCE9-2A60737E1AAF
Root verity signature partition for dm-verity (32‐bit PowerPC) [47] 1B31B5AA-ADD9-463A-B2ED-BD467FC857E7
Root verity signature partition for dm-verity (RISC-V 32‐bit) [47] 3A112A75-8729-4380-B4CF-764D79934448
Root verity signature partition for dm-verity (RISC-V 64‐bit) [47] EFE0F087-EA8D-4469-821A-4C2A96A8386A
Root verity signature partition for dm-verity (s390) [47] 3482388E-4254-435A-A241-766A065F9960
Root verity signature partition for dm-verity (s390x) [47] C80187A5-73A3-491A-901A-017C3FA953E9
Root verity signature partition for dm-verity (TILE-Gx) [47] B3671439-97B0-4A53-90F7-2D5A8F3AD47B
Root verity signature partition for dm-verity (x86-64) [47] 41092B05-9FC8-4523-994F-2DEF0408B176
Root verity signature partition for dm-verity (x86) [47] 5996FC05-109C-48DE-808B-23FA0830B676
/usr verity signature partition for dm-verity (Alpha) [47] 5C6E1C76-076A-457A-A0FE-F3B4CD21CE6E
/usr verity signature partition for dm-verity (ARC) [47] 94F9A9A1-9971-427A-A400-50CB297F0F35
/usr verity signature partition for dm-verity (ARM 32‐bit) [47] D7FF812F-37D1-4902-A810-D76BA57B975A
/usr verity signature partition for dm-verity (AArch64) [47] C23CE4FF-44BD-4B00-B2D4-B41B3419E02A
/usr verity signature partition for dm-verity (IA-64) [47] 8DE58BC2-2A43-460D-B14E-A76E4A17B47F
/usr verity signature partition for dm-verity (LoongArch 64‐bit) [47] B024F315-D330-444C-8461-44BBDE524E99
/usr verity signature partition for dm-verity (mips: 32‐bit MIPS big‐endian) [47] 97AE158D-F216-497B-8057-F7F905770F54
/usr verity signature partition for dm-verity (mips64: 64‐bit MIPS big‐endian) [47] 05816CE2-DD40-4AC6-A61D-37D32DC1BA7D
/usr verity signature partition for dm-verity (mipsel: 32‐bit MIPS little‐endian) [47] 3E23CA0B-A4BC-4B4E-8087-5AB6A26AA8A9
/usr verity signature partition for dm-verity (mips64el: 64‐bit MIPS little‐endian) [47] F2C2C7EE-ADCC-4351-B5C6-EE9816B66E16
/usr verity signature partition for dm-verity (PA-RISC) [47] 450DD7D1-3224-45EC-9CF2-A43A346D71EE
/usr verity signature partition for dm-verity (64‐bit PowerPC little‐endian) [47] C8BFBD1E-268E-4521-8BBA-BF314C399557
/usr verity signature partition for dm-verity (64‐bit PowerPC big‐endian) [47] 0B888863-D7F8-4D9E-9766-239FCE4D58AF
/usr verity signature partition for dm-verity (32‐bit PowerPC) [47] 7007891D-D371-4A80-86A4-5CB875B9302E
/usr verity signature partition for dm-verity (RISC-V 32‐bit) [47] C3836A13-3137-45BA-B583-B16C50FE5EB4
/usr verity signature partition for dm-verity (RISC-V 64‐bit) [47] D2F9000A-7A18-453F-B5CD-4D32F77A7B32
/usr verity signature partition for dm-verity (s390) [47] 17440E4F-A8D0-467F-A46E-3912AE6EF2C5
/usr verity signature partition for dm-verity (s390x) [47] 3F324816-667B-46AE-86EE-9B0C0C6C11B4
/usr verity signature partition for dm-verity (TILE-Gx) [47] 4EDE75E2-6CCC-4CC8-B9C7-70334B087510
/usr verity signature partition for dm-verity (x86-64) [47] E7BB33FB-06CF-4E81-8273-E543B413E2E2
/usr verity signature partition for dm-verity (x86) [47] 974A71C0-DE41-43C3-BE5D-5C5CCD1AD2C0
/boot, as an Extended Boot Loader (XBOOTLDR) partition [47] [48] BC13C2FF-59E6-4262-A352-B275FD6F7172
Swap partition [47] [48] 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F
Logical Volume Manager (LVM) partitionE6D6D379-F507-44C2-A23C-238F2A3DF928
/home partition [47] [48] 933AC7E1-2EB4-4F13-B844-0E14E2AEF915
/srv (server data) partition [47] [48] 3B8F8425-20E0-4F3B-907F-1A25A76F98E8
Per‐user home partition [47] 773F91EF-66D4-49B5-BD83-D683BF40AD16
Plain dm-crypt partition [51] [52] [53] 7FFEC5C9-2D00-49B7-8941-3EA10A5586B7
LUKS partition [51] [52] [53] [54] CA7D7CCB-63ED-4C53-861C-1742536059CC
Reserved8DA63339-0007-60C0-C436-083AC8230908
GNU/Hurd [55] Linux filesystem data [56] 0FC63DAF-8483-4772-8E79-3D69D8477DE4
Linux Swap partition [57] 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F
FreeBSD Boot partition [58] 83BD6B9D-7F41-11DC-BE0B-001560B84F0F
BSD disklabel partition [58] 516E7CB4-6ECF-11D6-8FF8-00022D09712B
Swap partition [58] 516E7CB5-6ECF-11D6-8FF8-00022D09712B
Unix File System (UFS) partition [58] 516E7CB6-6ECF-11D6-8FF8-00022D09712B
Vinum volume manager partition [58] 516E7CB8-6ECF-11D6-8FF8-00022D09712B
ZFS partition [58] 516E7CBA-6ECF-11D6-8FF8-00022D09712B
nandfs partition [59] 74BA7DD9-A689-11E1-BD04-00E081286ACF
macOS
Darwin
Hierarchical File System Plus (HFS+) partition48465300-0000-11AA-AA11-00306543ECAC
Apple APFS container
APFS FileVault volume container
7C3457EF-0000-11AA-AA11-00306543ECAC
Apple UFS container55465300-0000-11AA-AA11-00306543ECAC
ZFS [lower-alpha 9] 6A898CC3-1DD2-11B2-99A6-080020736631
Apple RAID partition52414944-0000-11AA-AA11-00306543ECAC
Apple RAID partition, offline52414944-5F4F-11AA-AA11-00306543ECAC
Apple Boot partition (Recovery HD)426F6F74-0000-11AA-AA11-00306543ECAC
Apple Label4C616265-6C00-11AA-AA11-00306543ECAC
Apple TV Recovery partition5265636F-7665-11AA-AA11-00306543ECAC
Apple Core Storage Container
HFS+ FileVault volume container
53746F72-6167-11AA-AA11-00306543ECAC
Apple APFS Preboot partition69646961-6700-11AA-AA11-00306543ECAC
Apple APFS Recovery partition52637672-7900-11AA-AA11-00306543ECAC
Solaris
illumos
Boot partition6A82CB45-1DD2-11B2-99A6-080020736631
Root partition6A85CF4D-1DD2-11B2-99A6-080020736631
Swap partition6A87C46F-1DD2-11B2-99A6-080020736631
Backup partition6A8B642B-1DD2-11B2-99A6-080020736631
/usr partition [lower-alpha 9] 6A898CC3-1DD2-11B2-99A6-080020736631
/var partition6A8EF2E9-1DD2-11B2-99A6-080020736631
/home partition6A90BA39-1DD2-11B2-99A6-080020736631
Alternate sector6A9283A5-1DD2-11B2-99A6-080020736631
Reserved partition6A945A3B-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 [60] [lower-alpha 10] Swap partition49F48D32-B10E-11DC-B99B-0019D1879648
FFS partition49F48D5A-B10E-11DC-B99B-0019D1879648
LFS partition49F48D82-B10E-11DC-B99B-0019D1879648
RAID partition49F48DAA-B10E-11DC-B99B-0019D1879648
Concatenated partition2DB519C4-B10F-11DC-B99B-0019D1879648
Encrypted partition2DB519EC-B10F-11DC-B99B-0019D1879648
ChromeOS [61] [62] ChromeOS kernelFE3A2A5D-4F32-41A7-B725-ACCC3285A309
ChromeOS rootfs3CB8E202-3B7E-47DD-8A3C-7FF2A13CFCEC
ChromeOS firmwareCAB6E88E-ABF3-4102-A07A-D4BB9BE3C1D3
ChromeOS future use2E0A753D-9E48-43B0-8337-B15192CB1B5E
ChromeOS miniOS09845860-705F-4BB5-B16C-8A8A099CAF52
ChromeOS hibernate3F0F8318-F146-4E6B-8222-C28C8F02E0D5
Container Linux by CoreOS [63] /usr partition (coreos-usr)5DFBF5F4-2848-4BAC-AA5E-0D9A20B745A6
Resizable rootfs (coreos-resize)3884DD41-8582-4404-B9A8-E9B84F2DF50E
OEM customizations (coreos-reserved)C95DC21A-DF0E-4340-8D7B-26CBFA9A03E0
Root filesystem on RAID (coreos-root-raid)BE9067B9-EA49-4F15-B4F6-F36F8C9E1818
Haiku [64] Haiku BFS42465331-3BA3-10F1-802A-4861696B7521
MidnightBSD [65] [lower-alpha 10] Boot partition85D5E45E-237C-11E1-B4B3-E89A8F7FC3A7
Data partition85D5E45A-237C-11E1-B4B3-E89A8F7FC3A7
Swap partition85D5E45B-237C-11E1-B4B3-E89A8F7FC3A7
Unix File System (UFS) partition0394EF8B-237E-11E1-B4B3-E89A8F7FC3A7
Vinum volume manager partition85D5E45C-237C-11E1-B4B3-E89A8F7FC3A7
ZFS partition85D5E45D-237C-11E1-B4B3-E89A8F7FC3A7
Ceph [lower-alpha 11] Journal45B0969E-9B03-4F30-B4C6-B4B80CEFF106
dm-crypt journal45B0969E-9B03-4F30-B4C6-5EC00CEFF106
OSD4FBD7E29-9D25-41B8-AFD0-062C0CEFF05D
dm-crypt OSD4FBD7E29-9D25-41B8-AFD0-5EC00CEFF05D
Disk in creation89C57F98-2FE5-4DC0-89C1-F3AD0CEFF2BE
dm-crypt disk in creation89C57F98-2FE5-4DC0-89C1-5EC00CEFF2BE
BlockCAFECAFE-9B03-4F30-B4C6-B4B80CEFF106
Block DB30CD0809-C2B2-499C-8879-2D6B78529876
Block write-ahead log5CE17FCE-4087-4169-B7FF-056CC58473F9
Lockbox for dm-crypt keysFB3AABF9-D25F-47CC-BF5E-721D1816496B
Multipath OSD4FBD7E29-8AE0-4982-BF9D-5A8D867AF560
Multipath journal45B0969E-8AE0-4982-BF9D-5A8D867AF560
Multipath blockCAFECAFE-8AE0-4982-BF9D-5A8D867AF560
Multipath block7F4A666A-16F3-47A2-8445-152EF4D03F6C
Multipath block DBEC6D6385-E346-45DC-BE91-DA2A7C8B3261
Multipath block write-ahead log01B41E1B-002A-453C-9F17-88793989FF8F
dm-crypt blockCAFECAFE-9B03-4F30-B4C6-5EC00CEFF106
dm-crypt block DB93B0052D-02D9-4D8A-A43B-33A3EE4DFBC3
dm-crypt block write-ahead log306E8683-4FE2-4330-B7C0-00A917C16966
dm-crypt LUKS journal45B0969E-9B03-4F30-B4C6-35865CEFF106
dm-crypt LUKS blockCAFECAFE-9B03-4F30-B4C6-35865CEFF106
dm-crypt LUKS block DB166418DA-C469-4022-ADF4-B30AFD37F176
dm-crypt LUKS block write-ahead log86A32090-3647-40B9-BBBD-38D8C573AA86
dm-crypt LUKS OSD4FBD7E29-9D25-41B8-AFD0-35865CEFF05D
OpenBSD Data partition824CC7A0-36A8-11E3-890A-952519AD3F61
QNX Power-safe (QNX6) file system [68] CEF5A9AD-73BC-4601-89F3-CDEEEEE321A1
Plan 9 Plan 9 partitionC91818F9-8025-47AF-89D2-F030D7000C2C
VMware ESX vmkcore (coredump partition)9D275380-40AD-11DB-BF97-000C2911D1B8
VMFS filesystem partitionAA31E02A-400F-11DB-9590-000C2911D1B8
VMware Reserved9198EFFC-31C0-11DB-8F78-000C2911D1B8
Android-IA [69] [70] [71] [72] Bootloader2568845D-2332-4675-BC39-8FA5A4748D15
Bootloader2114EAFFE-1552-4022-B26E-9B053604CF84
Boot49A4D17F-93A3-45C1-A0DE-F50B2EBE2599
Recovery4177C722-9E92-4AAB-8644-43502BFD5506
MiscEF32A33B-A409-486C-9141-9FFB711F6266
Metadata20AC26BE-20B7-11E3-84C5-6CFDB94711E9
System38F428E6-D326-425D-9140-6E0EA133647C
CacheA893EF21-E428-470A-9E55-0668FD91A2D9
DataDC76DDA9-5AC1-491C-AF42-A82591580C0D
PersistentEBC597D0-2053-4B15-8B64-E0AAC75F4DB1
VendorC5A0AEEC-13EA-11E5-A1B1-001E67CA0C3C
ConfigBD59408B-4514-490D-BF12-9878D963F378
Factory8F68CC74-C5E5-48DA-BE91-A0C8C15E9C80
Factory (alt) [73] 9FDAA6EF-4B3F-40D2-BA8D-BFF16BFB887B
Fastboot / Tertiary [74] [75] 767941D0-2085-11E3-AD3B-6CFDB94711E9
OEMAC6D7924-EB71-4DF8-B48D-E267B27148FF
Android 6.0+ ARM Android Meta19A710A2-B3CA-11E4-B026-10604B889DCF
Android EXT193D1EA4-B3CA-11E4-B075-10604B889DCF
Open Network Install Environment (ONIE)Boot7412F7D5-A156-4B13-81DC-867174929325
ConfigD4E6E2CD-4469-46F3-B5CB-1BFF57AFC149
PowerPC PReP boot9E1A2D38-C612-4316-AA26-8B49521E5A8B
freedesktop.org OSes (Linux, etc.)Shared boot loader configuration [76] BC13C2FF-59E6-4262-A352-B275FD6F7172
Atari TOS Basic data partition (GEM, BGM, F32)734E5AFE-F61A-11E6-BC64-92361F002671
VeraCrypt Encrypted data partition8C8F8EFF-AC95-4770-814A-21994F2DBC8F
OS/2 ArcaOS Type 190B6FF38-B98F-4358-A21F-48F35B4A8AD3
Storage Performance Development Kit (SPDK)SPDK block device [77] 7C5222BD-8F5D-4087-9C00-BF9843C7B58C
barebox bootloaderbarebox-state [78] 4778ED65-BF42-45FA-9C5B-287A1DC4AAB1
U-Boot bootloaderU-Boot environment [79] [80] 3DE21764-95BD-54BD-A5C3-4ABE786F38A8
SoftRAID[ citation needed ]SoftRAID_StatusB6FA30DA-92D2-4A9A-96F1-871EC6486200
SoftRAID_Scratch2E313465-19B9-463F-8126-8A7993773801
SoftRAID_VolumeFA709C7E-65B1-4593-BFD5-E71D61DE9B02
SoftRAID_CacheBBBA6DF5-F46F-4A89-8F59-8765B2727503
Fuchsia standard partitions [81] Bootloader (slot A/B/R)FE8A2634-5E2E-46BA-99E3-3A192091A350
Durable mutable encrypted system dataD9FD4535-106C-4CEC-8D37-DFC020CA87CB
Durable mutable bootloader data (including A/B/R metadata)A409E16B-78AA-4ACC-995C-302352621A41
Factory-provisioned read-only system dataF95D940E-CABA-4578-9B93-BB6C90F29D3E
Factory-provisioned read-only bootloader data10B8DBAA-D2BF-42A9-98C6-A7C5DB3701E7
Fuchsia Volume Manager49FD7CB8-DF15-4E73-B9D9-992070127F0F
Verified boot metadata (slot A/B/R)421A8BFC-85D9-4D85-ACDA-B64EEC0133E9
Zircon boot image (slot A/B/R)9B37FFF6-2E58-466A-983A-F7926D0B04E0
Fuchsia legacy partitions [81] [lower-alpha 12]
fuchsia-espC12A7328-F81F-11D2-BA4B-00A0C93EC93B
fuchsia-system606B000B-B7C7-4653-A7D5-B737332C899D
fuchsia-data08185F0C-892D-428A-A789-DBEEC8F55E6A
fuchsia-install48435546-4953-2041-494E-5354414C4C52
fuchsia-blob2967380E-134C-4CBB-B6DA-17E7CE1CA45D
fuchsia-fvm41D0E340-57E3-954E-8C1E-17ECAC44CFF5
Zircon boot image (slot A)DE30CC86-1F4A-4A31-93C4-66F147D33E05
Zircon boot image (slot B)23CC04DF-C278-4CE7-8471-897D1A4BCDF7
Zircon boot image (slot R)A0E5CF57-2DEF-46BE-A80C-A2067C37CD49
sys-config4E5E989E-4C86-11E8-A15B-480FCF35F8E6
factory-config5A3A90BE-4C86-11E8-A15B-480FCF35F8E6
bootloader5ECE94FE-4C86-11E8-A15B-480FCF35F8E6
guid-test8B94D043-30BE-4871-9DFA-D69556E8C1F3
Verified boot metadata (slot A)A13B4D9A-EC5F-11E8-97D8-6C3BE52705BF
Verified boot metadata (slot B)A288ABF2-EC5F-11E8-97D8-6C3BE52705BF
Verified boot metadata (slot R)6A2460C3-CD11-4E8B-80A8-12CCE268ED0A
misc1D75395D-F2C6-476B-A8B7-45CC1C97B476
emmc-boot1900B0FC5-90CD-4D4F-84F9-9F8ED579DB88
emmc-boot2B2B2E8D1-7C10-4EBC-A2D0-4614568260AD

See also

Notes

  1. Adding ULL suffix to an integer constant makes it of type unsigned long long int.
  2. Third party implementation exists (GPTTSD)
  3. Only if using its service pack 1 or 2
  4. In a multi-disk setup, non-UEFI bootloader (boot drive) requires MBR-based partitioning, while a system drive can use GUID partitioning.
  5. The GUIDs in this table are written as per RFC 4122, i.e. big-endian byte order, recognizable by the position of the version bits. For example, the GUID for an EFI System partition (C12A7328-F81F-11D2-BA4B-00A0C93EC93B), when serialized in GPT data structures (little-endian), corresponds to the hex sequence 28 73 2A C1 1F F8 D2 11 BA 4B 00 A0 C9 3E C9 3B. The first three blocks are byte-swapped to little-endian, the last is a byte array. See details in TN2166 [11]
  6. The formation of this GUID does not follow the GUID definition; it is formed by using the ASCII codes for the string "Hah!IdontNeedEFI". Such formation of "GUID" value breaks down the guaranteed uniqueness of GUID.
  7. 1 2 Some computer manufacturers have their own GUIDs for partitions that are analogous to the EFI System Partition, but that hold boot loaders to launch manufacturer-specific recovery tools. [42]
  8. 1 2 Previously, Linux used the same GUID for the data partitions as Windows (Basic data partition: EBD0A0A2-B9E5-4433-87C0-68B6B72699C7). Linux never had a separate unique partition type GUID defined for its data partitions. This created problems when dual-booting Linux and Windows in UEFI-GPT setup. The new GUID (Linux filesystem data: 0FC63DAF-8483-4772-8E79-3D69D8477DE4) was defined jointly by GPT fdisk and GNU Parted developers. [44] It is identified as type code 0x8300 in GPT fdisk.
  9. 1 2 The GUID for /usr on Solaris is used as a generic GUID for ZFS by macOS.
  10. 1 2 NetBSD and MidnightBSD had used the FreeBSD GUIDs before their unique GUIDs were created.
  11. The Ceph filesystem uses GUIDs to mark the state of preparation a disk is in. [66] [67]
  12. The legacy Fuchsia GUIDs had two oddities: UUIDs were not generated randomly (several runs of bits were common between partitions), and partitions were uniquely identified by type GUID. The standardized scheme uses randomly-generated GUIDs, and slotted partitions (e.g. zircon_{a,b,r}) share the same type and are distinguished by name and unique GUID. [82]

Related Research Articles

File Allocation Table (FAT) is a file system developed for personal computers and was the default filesystem for MS-DOS and Windows 9x operating systems. Originally developed in 1977 for use on floppy disks, it was adapted for use on hard disks and other devices. The increase in disk drives capacity required three major variants: FAT12, FAT16 and FAT32. FAT was replaced with NTFS as the default file system on Microsoft operating systems starting with Windows XP. Nevertheless, FAT continues to be used on flash and other solid-state memory cards and modules, many portable and embedded devices because of its compatibility and ease of implementation.

<span class="mw-page-title-main">Disk partitioning</span> Creation of separate accessible storage areas on a secondary computer storage device

Disk partitioning or disk slicing is the creation of one or more regions on secondary storage, so that each region can be managed separately. These regions are called partitions. It is typically the first step of preparing a newly installed disk, before any file system is created. The disk stores the information about the partitions' locations and sizes in an area known as the partition table that the operating system reads before any other part of the disk. Each partition then appears to the operating system as a distinct "logical" disk that uses part of the actual disk. System administrators use a program called a partition editor to create, resize, delete, and manipulate the partitions. Partitioning allows the use of different filesystems to be installed for different kinds of files. Separating user data from system data can prevent the system partition from becoming full and rendering the system unusable. Partitioning can also make backing up easier. A disadvantage is that it can be difficult to properly size partitions, resulting in having one partition with too much free space and another nearly totally allocated.

<span class="mw-page-title-main">Boot sector</span> Sector of a persistent data storage device

A boot sector is the sector of a persistent data storage device which contains machine code to be loaded into random-access memory (RAM) and then executed by a computer system's built-in firmware.

<span class="mw-page-title-main">GNU GRUB</span> Boot loader package

GNU GRUB is a boot loader package from the GNU Project. GRUB is the reference implementation of the Free Software Foundation's Multiboot Specification, which provides a user the choice to boot one of multiple operating systems installed on a computer or select a specific kernel configuration available on a particular operating system's partitions.

Logical block addressing (LBA) is a common scheme used for specifying the location of blocks of data stored on computer storage devices, generally secondary storage systems such as hard disk drives. LBA is a particularly simple linear addressing scheme; blocks are located by an integer index, with the first block being LBA 0, the second LBA 1, and so on.

<span class="mw-page-title-main">UEFI</span> Operating system and firmware specification

Unified Extensible Firmware Interface is a specification that defines the architecture of the platform firmware used for booting the computer hardware and its interface for interaction with the operating system. Examples of firmware that implement the specification are AMI Aptio, Phoenix SecureCore, TianoCore EDK II, InsydeH2O. UEFI replaces the BIOS which was present in the boot ROM of all personal computers that are IBM PC compatible, although it can provide backwards compatibility with the BIOS using CSM booting. Intel developed the original Extensible Firmware Interface (EFI) specification. Some of the EFI's practices and data formats mirror those of Microsoft Windows. In 2005, UEFI deprecated EFI 1.10.

<span class="mw-page-title-main">Cylinder-head-sector</span> Historical method for giving addresses to physical data blocks on hard disk drives

Cylinder-head-sector (CHS) is an early method for giving addresses to each physical block of data on a hard disk drive.

INT 13h is shorthand for BIOS interrupt call 13hex, the 20th interrupt vector in an x86-based computer system. The BIOS typically sets up a real mode interrupt handler at this vector that provides sector-based hard disk and floppy disk read and write services using cylinder-head-sector (CHS) addressing. Modern PC BIOSes also include INT 13h extension functions, originated by IBM and Microsoft in 1992, that provide those same disk access services using 64-bit LBA addressing; with minor additions, these were quasi-standardized by Phoenix Technologies and others as the EDD BIOS extensions.

Apple Partition Map (APM) is a partition scheme used to define the low-level organization of data on disks formatted for use with 68k and PowerPC Macintosh computers. It was introduced with the Macintosh II.

The Logical Disk Manager (LDM) is an implementation of a logical volume manager for Microsoft Windows NT, developed by Microsoft and Veritas Software. It was introduced with the Windows 2000 operating system, and is supported in Windows XP, Windows Server 2003, Windows Vista, Windows 7, Windows 8, Windows 10 and Windows 11. The MMC-based Disk Management snap-in hosts the Logical Disk Manager. On Windows 8 and Windows Server 2012, Microsoft deprecated LDM in favor of Storage Spaces.

An extended boot record (EBR), or extended partition boot record (EPBR), is a descriptor for a logical partition under the common DOS disk drive partitioning system. In that system, when one partition record entry in the master boot record (MBR) is designated an extended partition, then that partition can be subdivided into a number of logical partitions. The actual structure of that extended partition is described by one or more EBRs, which are located inside the extended partition. The first EBR will always be located on the very first sector of the extended partition.

<span class="mw-page-title-main">TestDisk</span> Data recovery utility

TestDisk is a free and open-source data recovery utility that helps users recover lost partitions or repair corrupted filesystems. TestDisk can collect detailed information about a corrupted drive, which can then be sent to a technician for further analysis. TestDisk supports DOS, Microsoft Windows, Linux, FreeBSD, NetBSD, OpenBSD, SunOS, and MacOS. TestDisk handles non-partitioned and partitioned media. In particular, it recognizes the GUID Partition Table (GPT), Apple partition map, PC/Intel BIOS partition tables, Sun Solaris slice and Xbox fixed partitioning scheme. TestDisk uses a command line user interface. TestDisk can recover deleted files with 97% accuracy.

A volume boot record (VBR) is a type of boot sector introduced by the IBM Personal Computer. It may be found on a partitioned data storage device, such as a hard disk, or an unpartitioned device, such as a floppy disk, and contains machine code for bootstrapping programs stored in other parts of the device. On non-partitioned storage devices, it is the first sector of the device. On partitioned devices, it is the first sector of an individual partition on the device, with the first sector of the entire device being a Master Boot Record (MBR) containing the partition table.

A Microsoft Reserved Partition (MSR) is a partition of a data storage device, which is created to reserve a portion of disk space for possible subsequent use by a Windows operating system installed on a separate partition. No meaningful data is stored within the MSR; though from the MSR, chunks may be taken for the creation of new partitions, which themselves may contain data structures.

<span class="mw-page-title-main">EFI system partition</span> Partition used by Unified Extensible Firmware Interface

The EFIsystem partition or ESP is a partition on a data storage device that is used by computers that have the Unified Extensible Firmware Interface (UEFI). When a computer is booted, UEFI firmware loads files stored on the ESP to start operating systems and various utilities.

In Microsoft operating systems, when using basic disk partitioned with GUID Partition Table (GPT) layout, a basic data partition (BDP) is any partition identified with Globally Unique Identifier (GUID) of EBD0A0A2-B9E5-4433-87C0-68B6B72699C7.

<span class="mw-page-title-main">Windows Boot Manager</span> Boot process used in modern Windows NT-based products

The Windows Boot Manager (BOOTMGR) is the bootloader provided by Microsoft for Windows NT versions starting with Windows Vista and its server counterpart. It is the first program launched by the BIOS or UEFI of the computer and is responsible for loading the rest of Windows. It replaced the NTLDR present in older versions of Windows.

The partition type in a partition's entry in the partition table inside a master boot record (MBR) is a byte value intended to specify the file system the partition contains or to flag special access methods used to access these partitions.

The BIOS boot partition is a partition on a data storage device that GNU GRUB uses on legacy BIOS-based personal computers in order to boot an operating system, when the actual boot device contains a GUID Partition Table (GPT). Such a layout is sometimes referred to as BIOS/GPT boot.

A master boot record (MBR) is a special type of boot sector at the very beginning of partitioned computer mass storage devices like fixed disks or removable drives intended for use with IBM PC-compatible systems and beyond. The concept of MBRs was publicly introduced in 1983 with PC DOS 2.0.

References

  1. 1 2 "FAQ: Drive Partition Limits" (PDF). www.uefi.org . 2010. Retrieved 12 December 2020.
  2. 1 2 3 "Unified Extensible Firmware Interface (UEFI) Specification" (PDF). www.uefi.org . 29 August 2022. p. 110. Retrieved 23 June 2023.
  3. Swinburne, Richard (1 April 2010). "The Facts: 4K Advanced Format Hard Disks". www.bit-tech.net . Retrieved 12 December 2020.
  4. 1 2 Smith, Ryan (18 December 2009). "Western Digital's Advanced Format: The 4K Sector Transition Begins". www.anandtech.com . Archived from the original on 28 December 2020. Retrieved 12 December 2020.
  5. "Enterprise Capacity 3.5 HDD Data Sheet" (PDF). Seagate Technology. April 23, 2014. p. 2. Archived (PDF) from the original on 2014-08-12. Retrieved August 10, 2014.
  6. "WD Re Datacenter Distribution Specification Sheet" (PDF). Western Digital. January 21, 2016. p. 2. Archived (PDF) from the original on 2015-09-06. Retrieved February 14, 2016.
  7. "Advanced format (4K) disk compatibility update (Windows)". November 28, 2012. Archived from the original on 2013-01-11. Retrieved January 3, 2013.
  8. "Microsoft support policy for 4K sector hard drives in Windows". Microsoft. Archived from the original on 2011-08-19. Retrieved October 24, 2013.
  9. "UEFI specification". UEFI.org.
  10. 1 2 3 4 Smith, Roderick (3 July 2012). "Make the most of large drives with GPT and Linux". IBM . Retrieved 14 December 2020.
  11. 1 2 3 4 "Technical Note TN2166: Secrets of the GPT". Apple Developer. Apple. 2006-11-06. Retrieved 2014-04-16.
  12. The GPT header contains a field that specifies the size of a partition table entry. The minimum required is 128 bytes, but implementations must allow for other values. See "Mac Developer Library". Developer.Apple.com. Apple . Retrieved 2014-07-13.
  13. Leach, P.; Mealling, M.; Salz, R. (July 2005). A Universally Unique IDentifier (UUID) URN Namespace. Internet Engineering Task Force. doi: 10.17487/RFC4122 . RFC 4122 . Retrieved 18 December 2020.
  14. Elliott, Rob (4 January 2010). "e09127r3 EDD-4 Hybrid MBR Boot Code Annex" (PDF). www.t13.org . Archived from the original (PDF) on 20 August 2020. Retrieved 16 December 2020.
  15. "GPT | Microsoft Docs". 31 August 2016.
  16. "CREATE_PARTITION_PARAMETERS (vds.h) - Win32 apps | Microsoft Docs". 9 February 2023.
  17. "Disk Format". Chromium.org. Retrieved 2022-02-09.
  18. "Ubuntu on MacBook". Community Documentation. Ubuntu.
  19. "GNU Parted FAQ".
  20. "mklabel". Parted Manual. GNU.
  21. "fdisk: add GPT support". kernel.org. 2013-09-27. Retrieved 2013-10-18.
  22. Bueso, Davidlohr (2013-09-28). "fdisk updates and GPT support" . Retrieved 2013-10-18.
  23. "DISK_MAX_PARTS define". Archived from the original on 2020-03-26. Retrieved 2020-03-26.
  24. "Myths and Facts About Intel Macs". rEFIt. Source forge.
  25. "Significant changes from NetBSD 5.0 to 6.0"..
  26. "Significant changes from NetBSD 5.0 to 6.0 (NetBSD/i386)"..
  27. "Significant changes from NetBSD 5.0 to 6.0 (NetBSD/amd64)"..
  28. "OpenBSD 5.9"..
  29. "Booting from a ZFS Root File System". Oracle. Archived from the original on 2011-12-10.
  30. "idisk(1M)". Hewlett-Packard.
  31. 1 2 3 4 "Windows and GPT FAQ". msdn.microsoft.com . 1 June 2017. Retrieved 14 December 2020.
  32. Windows 8 32-bit supports booting from UEFI-based PC (x86-32 only) using GPT-based disks.
  33. Windows 8.1 32-bit supports booting from UEFI-based PC (x86-32 only) using GPT-based disks.
  34. Windows 10 32-bit supports booting from UEFI-based PC (x86-32 only) using GPT-based disks.
  35. Microsoft raises the speed limit with the availability of 64-bit editions of Windows Server 2003 and Windows XP Professional Archived 2010-11-10 at the Wayback Machine
  36. Windows 8 64-bit supports booting from UEFI-based PC (x86-64 only) using GPT-based disks.
  37. Windows 8.1 64-bit supports booting from UEFI-based PC (x86-64 only) using GPT-based disks.
  38. Windows 10 64-bit supports booting from UEFI-based PC (x86-64 only) using GPT-based disks.
  39. Microsoft's 'Weirdest Release': Windows Server 2022 Quietly Becomes Generally Available
  40. "Archived copy" (PDF). Archived from the original (PDF) on 2013-07-28.{{cite web}}: CS1 maint: archived copy as title (link)
  41. "F6F: Funtoo Linux and Intel Rapid Start Technology". Blog.adios.tw. 2012-10-30. Retrieved 2014-01-29.
  42. GPT fdisk: parttypes.cc, line 198
  43. 1 2 3 4 5 "PARTITION_INFORMATION_GPT - Win32 apps". Microsoft Docs. Retrieved 2021-08-21.
  44. Smith, Rod (23 June 2011). "Need for a unique Linux GPT GUID type code (PATCH included)". bug-parted (Mailing list). Retrieved 12 April 2016.{{cite mailing list}}: Unknown parameter |agency= ignored (help)
  45. Sergei Antonov (2014-07-31). "libfdisk: (gpt) add Microsoft Storage Spaces GUID". util-linux/util-linux.git - The util-linux code repository. Retrieved 2021-08-21.
  46. Known issues with Storage Replica
  47. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 The Discoverable Partitions Specification (DPS)
  48. 1 2 3 4 5 systemd-gpt-auto-generator(8)
  49. Home Directories
  50. The Boot Loader Specification
  51. 1 2 "[dm-crypt] LUKS GPT GUID". Saout.de. Archived from the original on 2014-02-03. Retrieved 2014-01-29.
  52. 1 2 "[dm-crypt] LUKS GPT GUID". Saout.de. Archived from the original on 2014-02-03. Retrieved 2014-01-29.
  53. 1 2 "pyuefi source code".
  54. "udisks-2.7.4 source code". GitHub . 10 July 2022.
  55. The GNU/Hurd User's Guide: Installing, Internet Install
  56. Hurd and GRUB use the same Linux ext2 file system to run and it no longer supports "UFS". file system
  57. Hurd uses the same Linux swap file system
  58. 1 2 3 4 5 6 "FreeBSD System Manager's Manual gpart(8)" . Retrieved 2021-08-21.
  59. "Add a partition type for nandfs to the apm, bsd, gpt and vtoc8 schemes. · freebsd/freebsd-src@f24a822 · GitHub". GitHub . Retrieved 2021-08-21.
  60. "CVS log for src/sys/sys/disklabel_gpt.h". Cvsweb.netbsd.org. Retrieved 2014-01-29.
  61. "Disk Format - The Chromium Projects". Chromium.org. Retrieved 2014-01-29.
  62. "Disk Format - The Chromium Projects". Chromium.org. Retrieved 2024-01-18.
  63. "Constants and IDs". CoreOS. Retrieved 2018-07-26.
  64. src/add-ons/kernel/partitioning_systems/gpt/gpt_known_guids.h
  65. http://www.midnightbsd.org/cgi-bin/cvsweb.cgi/src/sys/sys/gpt.h.diff?r1=1.4;r2=1.5%5B%5D src/sys/sys/gpt.h
  66. Script to set up a ceph disk: ceph-disk, lines 76-81
  67. ceph-disk labels
  68. QNX Power-safe filesystem
  69. "gpt.ini (github.com/android-ia/device-androidia-mixins)". GitHub .
  70. "gpt.ini (github.com/android-ia/device-androidia)". GitHub .
  71. "gpt.ini (github.com/android-ia/vendor_intel_baytrail)". GitHub .
  72. "gpt-sample.ini (github.com/android-ia/platform_bootable_userfastboot)". GitHub .
  73. "gpt_ini2bin.py (android.googlesource.com/platform/hardware/bsp/intel)".
  74. "gpt.c (github.com/android-ia/platform_bootable_userfastboot)". GitHub .
  75. "gpt_ini2bin.py (github.com/android-ia/vendor_intel_common)". GitHub .
  76. "The Boot Loader Specification". freedesktop.org . Retrieved 2017-01-05.
  77. "SPDK Block Device User Guide" . Retrieved 2021-01-20.
  78. "Barebox State Framework" . Retrieved 2021-05-21.
  79. Villemoes, Rasmus (2020-11-17). "RFC: Partition type GUID for U-Boot environment". U-Boot mailing list (Mailing list). Retrieved 2021-09-28.
  80. "U-boot 2021.07 source code: include/part_efi.h". 20 November 2020. Retrieved 2021-09-28.
  81. 1 2 zircon/system/public/zircon/hw/gpt.h
  82. "[paver] add support for new partition scheme" . Retrieved 2021-10-22.