Введение
Стандарт разбиения компьютерного диска
Таблица разделов GUID (GPT) — это стандарт для организации таблиц разделов физического устройства хранения компьютера, такого как жесткий диск или твердотельный накопитель, с использованием универсальных уникальных идентификаторов (UUID), также известных как глобально уникальные идентификаторы (GUID). Являясь частью стандарта Unified Extensible Firmware Interface (UEFI) (Unified EFI Forum предложил заменить BIOS для ПК), он тем не менее также используется в некоторых BIOS из-за ограничений таблиц разделов MBR, которые используют 32 бита для адресации логических блоков (LBA) традиционных 512-байтовых секторов диска. Все современные операционные системы для персональных компьютеров поддерживают GPT. Некоторые, включая macOS и Microsoft Windows на архитектуре x86, поддерживают загрузку с разделов GPT только на системах с прошивкой EFI, но FreeBSD и большинство дистрибутивов Linux могут загружаться с разделов GPT на системах как с BIOS, так и с интерфейсом прошивки EFI.
История
Схема разделов Master Boot Record (MBR), широко используемая с начала 1980-х годов, налагала ограничения на использование современного оборудования. Размер доступных адресов блоков и связанной с ними информации ограничен 32 битами. Для жестких дисков с 512-байтовыми секторами записи в таблице разделов MBR допускают максимальный размер 2 ТиБ (2³² × 512 байт) или 2,20 ТБ (2,20 × 10¹² байт). В конце 1990-х годов Intel разработала новый формат таблицы разделов в рамках того, что в конечном итоге стало Unified Extensible Firmware Interface (UEFI). Таблица разделов GUID указана в главе 5 спецификации UEFI 2.8. GPT использует 64 бита для логических адресов блоков, позволяя максимальный размер диска 2⁶⁴ сектора. Для дисков с 512-байтовыми секторами максимальный размер составляет 8 ЗиБ (2⁶⁴ × 512 байт) или 9,44 ЗБ (9,44 × 10²¹ байт). Для совместимости с устаревшим оборудованием и программным обеспечением эти диски включают технологию эмуляции (512e), которая представляет 512-байтовые секторы для компонента, обращающегося к жесткому диску, несмотря на их базовые 4096-байтовые физические секторы. Производительность может снижаться при операциях записи, когда диску приходится выполнять две операции чтения-модификации-записи для выполнения одной некорректно выровненной операции записи на 4096 байт. Готовность поддержки логических секторов 4 КБ в операционных системах различается в зависимости от их типа, производителя и версии. Например, Microsoft Windows поддерживает 4K-нативные диски, начиная с Windows 8 и Windows Server 2012 (оба выпущены в 2012 году) в UEFI.
Особенности
Как и MBR, GPT использует логическую адресацию блоков (LBA) вместо устаревшей адресации по цилиндрам, головкам и секторам (CHS). Защитный MBR хранится в LBA 0, заголовок GPT – в LBA 1, а резервный заголовок GPT – в последнем LBA. Заголовок GPT содержит указатель на таблицу разделов (Partition Entry Array), которая обычно располагается в LBA 2. Каждая запись в таблице разделов имеет размер 128 байт. Спецификация UEFI требует выделения минимум 16 384 байт для массива записей разделов, независимо от размера сектора. Таким образом, на диске с секторами размером 512 байт для массива записей разделов используется не менее 32 секторов, и первый доступный блок находится по адресу LBA 34 или выше, а на диске с секторами размером 4096 байт для массива записей разделов используется не менее 4 секторов, и первый доступный блок находится по адресу LBA 6 или выше.
UNIX и системы, подобные Unix
+ Подробная информация о поддержке GPT на UNIX и Unix-подобных операционных системах
Семейство ОС Версия или редакция Платформа Поддержка чтения и записи Поддержка загрузки Примечание
FreeBSD С 7.0 IA 32, x86 64, ARM ✔ ✔ В гибридной конфигурации могут использоваться как GPT, так и идентификаторы разделов MBR.
Linux Большинство дистрибутивов Linux x86, Fedora 8+ и Ubuntu 8.04+ IA 32, x86 64, ARM ✔ ✔ Инструменты, такие как gdisk, GNU Parted, util linux v2.23+, fdisk, SYSLINUX, GRUB 0.96 + патчи и GRUB 2 поддерживают GPT. Ограничено 256 разделами на диск.
macOS С 10.4.0 (некоторые функции с 10.4.6) IA 32, x86 64, PowerPC, Apple silicon ✔ ✔ Только компьютеры Macintosh на базе Intel и Apple silicon могут загружаться с GPT.
MidnightBSD С 0.4 CURRENT IA 32, x86 64 ✔ Требует CSM В гибридной конфигурации могут использоваться как GPT, так и идентификаторы разделов MBR.
NetBSD С 6.0 IA 32, x86 64, ARM ✔ ✔
OpenBSD С 5.9 IA 32, x86 64, ARM ✔ ✔
Solaris С Solaris 10 IA 32, x86 64, SPARC ✔ ✔
HP UX С HP UX 11.20 IA 64 ✔ ✔
Windows: 64-битные версии
Ограничено 128 разделами на диск. + Подробности поддержки GPT в 64-битных версиях Microsoft Windows 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 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 имеет приоритет в гибридной конфигурации. Windows 8.1 2013 08 27 x64 ✔ Требуется UEFI. MBR имеет приоритет в гибридной конфигурации. Windows 10 2015 07 29 x64 ✔ Требуется UEFI. MBR имеет приоритет в гибридной конфигурации. Windows Server 2016 2016 10 12 x64 ✔ Требуется UEFI. MBR имеет приоритет в гибридной конфигурации. Windows Server 2019 2018 10 02 x64 ✔ Требуется UEFI. MBR имеет приоритет в гибридной конфигурации. Windows Server 2022 2021 08 18 x64 ✔ Требуется UEFI. MBR имеет приоритет в гибридной конфигурации. Windows 11 2021 10 05 x64, ARM64 ✔ ✔ UEFI является системным требованием для Windows 11.
GUID типа раздела
"Идентификатор типа раздела GUID" означает, что каждый тип раздела строго идентифицируется уникальным для этого типа номером GUID, и, следовательно, разделы одного и того же типа будут иметь один и тот же "GUID типа раздела". Каждый раздел также имеет "уникальный GUID раздела" в качестве отдельной записи, который, как следует из названия, является уникальным идентификатором для каждого раздела. Операционная система Тип раздела Глобально уникальный идентификатор (GUID) Раздел метаданных логического диспетчера дисков (LDM) Раздел Storage Replica Раздел данных HP UX Служебный раздел Linux Данные файловой системы Linux RAID-раздел Корневой раздел (Alpha) Раздел LUKS Зарезервировано Данные файловой системы GNU/Hurd Linux Раздел подкачки Linux Загрузочный раздел FreeBSD Раздел дисковой метки BSD Раздел HFS+ (Hierarchical File System Plus) macOS Контейнер APFS Apple Контейнер тома FileVault APFS Apple Контейнер UFS Apple ZFS Раздел Apple RAID Раздел Apple RAID, в автономном режиме Загрузочный раздел Apple (Recovery HD) Метка Apple Раздел восстановления Apple TV Контейнер Apple Core Storage HFS+ FileVault Контейнер APFS Preboot Apple Раздел восстановления APFS Apple Solarisillumos Загрузочный раздел Корневой раздел Раздел подкачки Резервный раздел Раздел Раздел Раздел Альтернативный сектор Зарезервированный раздел Раздел подкачки NetBSD Раздел FFS Раздел LFS RAID-раздел Конкатенированный раздел Зашифрованный раздел ChromeOS Ядро ChromeOS Rootfs ChromeOS Прошивка ChromeOS Для будущего использования ChromeOS MiniOS Контейнер ChromeOS hibernate Container Linux by CoreOS Раздел /usr (coreos usr) Изменяемый корневой раздел (coreos resize) Пользовательские настройки OEM (coreos reserved) Корневая файловая система на RAID (coreos root raid) Haiku BFS Haiku Раздел загрузки MidnightBSD Раздел данных Раздел подкачки Раздел Unix File System (UFS) Раздел менеджера томов Vinum Раздел ZFS Журнал Ceph Журнал dm-crypt OSD dm-crypt OSD Диск в процессе создания dm-crypt Диск в процессе создания Блок База данных блоков Журнал предварительной записи блоков Защищенный контейнер для ключей dm-crypt OSD Multipath Журнал Multipath Блок Multipath База данных блоков Multipath Журнал предварительной записи блоков Multipath Блок dm-crypt Блок dm-crypt База данных блоков dm-crypt Журнал предварительной записи блоков dm-crypt Журнал LUKS dm-crypt Блок LUKS База данных блоков LUKS dm-crypt Журнал предварительной записи блоков LUKS dm-crypt OSD Раздел данных OpenBSD Файловая система Power safe (QNX6) QNX Plan 9 Раздел Plan 9 vmkcore (раздел дампа памяти) VMware ESX Раздел файловой системы VMFS VMware Зарезервировано Загрузчик Android IA Загрузчик2 Загрузка Восстановление Разное Метаданные Система Кэш Данные Постоянные Данные поставщика Конфигурация Фабричный Фабричный (альтернативный) Fastboot / Tertiary OEM Android 6.0+ ARM Android Meta Android EXT Open Network Install Environment (ONIE) Загрузка Конфигурация PowerPC PReP boot freedesktop.org OSes (Linux, etc.) Общая конфигурация загрузчика Atari TOS Базовый раздел данных (GEM, BGM, F32) Раздел зашифрованных данных VeraCrypt OS/2 ArcaOS Тип 1 Комплект разработки производительности хранилища (SPDK) Блочное устройство SPDK Загрузчик barebox Состояние barebox Загрузчик U Boot Окружение U Boot SoftRAID Статус SoftRAID Scratch SoftRAID Volume SoftRAID Cache Fuchsia Стандартные разделы Загрузчик (слот A/B/R) Надежные изменяемые зашифрованные системные данные Надежные изменяемые данные загрузчика (включая метаданные A/B/R) Системные данные, предоставленные на заводе только для чтения Данные загрузчика, предоставленные на заводе только для чтения Менеджер томов Fuchsia Метаданные проверенной загрузки (слот A/B/R) Образ загрузки Zircon (слот A/B/R) Устаревшие разделы Fuchsia fuchsia esp fuchsia system fuchsia data fuchsia install fuchsia blob fuchsia fvm Образ загрузки Zircon (слот A) Образ загрузки Zircon (слот B) Образ загрузки Zircon (слот R) sys config factory config Загрузчик guid test Метаданные проверенной загрузки (слот A) Метаданные проверенной загрузки (слот B) Метаданные проверенной загрузки (слот R) Разное emmc boot1 emmc boot2