MBR与GPT (GUID)分区系统支持列表
2024-04-19 09:31:05    16    0    0
maker

MBR与GPT (GUID)分区系统支持列表

什么是GPT:

 

GPT(全局唯一标识磁盘分区表),是源自EFI标准的一种全新磁盘分区表标准结构,与普通的MBR(主引导记录)相比,更加灵活,更加强大。

GPT分区的优点:

1、分区数量无限制,但是受到windows系统的限制,最多只允许创建128个分区。一般都够用了。

2、分区容量支持超过2TB的硬盘。GPT采用64位的整数表示扇区号,支持的容量非常之大,硬盘大小不知道发展到那年才能见到这么大的硬盘。分区容量支持几乎可以说永不过时。而传统的MBR最高支持到2TB

3、分区表有容灾功能,存在两份,一份坏了,另一份顶上。

GPT 磁盘的最大大小是多少

理论上,一块 GPT 磁盘的最大长度可为 2^64 个逻辑块。 逻辑块的大小通常为 512 字节。

最大分区(和磁盘)大小取决于操作系统版本。 Windows XP 和原始版本的 Windows Server 2003 对每个物理磁盘(包括所有分区)的大小限制为 2TB。 Windows Server 2003 SP1、Windows XP x64 版和更高版本可以支持最大 18 EB 的原始分区。 (Windows 文件系统目前限制为每个分区不超过 256 TB。)

GPT 磁盘可以包含多少个分区

该规范允许几乎无限数量的分区。 但是,Windows 实现将分区数量限制为不超过 128 个。 分区数量受限于为 GPT 中的分区条目保留的空间量。

一块磁盘是否可以同时使用 GPT 和 MBR

错误。 但是,所有 GPT 磁盘都包含一个保护性 MBR。

保护性 MBR

保护性 MBR 从扇区 0 开始,位于磁盘上的 GPT 分区表之前。 MBR 包含一个跨越磁盘的 0xEE 类型分区。

为何 GPT 包含保护性 MBR

保护性 MBR 用于保护从以前发布的 MBR 磁盘工具(例如 Microsoft MS-DOS FDISK 或 Microsoft Windows NT 磁盘管理器)对 GPT 磁盘进行的访问。 这些工具无法识别 GPT,也不知道如何正确访问 GPT 磁盘。 无法识别 GPT 的旧式软件仅在访问 GPT 磁盘时才解释受保护的 MBR。 这些工具通过解释受保护的 MBR 将 GPT 磁盘视为包含单个整体性的分区(可能未识别到),而不是将该磁盘误认为是未分区的磁盘。

为何 GPT 分区的磁盘上看似使用了 MBR

使用仅识别 MBR 的磁盘工具访问 GPT 磁盘时会发生这种情况。 有关详细信息,请参阅以下各节:

  • 如何在一块磁盘上同时使用 GPT 和 MBR
  • 保护性 MBR
  • 为何 GPT 包含保护性 MBR

将 GPT 磁盘移到另一台计算机

可以将仅包含数据的 GPT 磁盘移动或迁移到运行 Windows XP(仅限 64 位版)或更高操作系统版本(32 位或 64 位版)的其他系统。 可以在系统关机或安全移除磁盘后迁移仅包含数据的 GPT 磁盘。

在同一系统上混合搭配使用 GPT 和 MBR 磁盘

如前所述,可以在支持 GPT 的系统上混用 GPT 和 MBR 磁盘。 但是,必须注意以下限制:

  • 支持 UEFI 的系统要求启动分区必须驻留在 GPT 磁盘上。 其他硬盘可以是 MBR 或 GPT 磁盘。
  • MBR 和 GPT 磁盘都可以放在单个动态磁盘组中。 卷集可以跨越 MBR 和 GPT 磁盘。

操作系统GPT支持列表(MBR全部支持)

操作系统读写GPT硬盘数据盘从GPT启动系统盘
Windows 2000/NT/9X不能,只能看到一个Protective MBR分区不支持

Windows XP 32位

不能,只能看到一个Protective MBR分区不支持
Windows XP 64位支持不支持
Windows Server 2003 SP1及以上版本 (32位/64位)支持只有基于Itanium的系统才能从GPT磁盘启动
Windows Vista、Windows Server 2008及更高版本 (32位/64位)支持只有基于EFI的系统支持从GPT磁盘启动
Windows 7/8/8.1/10/11  (32位/64位)支持只有基于EFI的系统支持从GPT磁盘启动


注意:某些特殊情况下32位是可以从EFI启动(只要基于EFI启动就可以从GPT分区启动)。通常情况下我们都是用64位的系统基于EFI从GPT磁盘分区启动。 

https://learn.microsoft.com/zh-cn/windows-hardware/drivers/bringup/frequently-asked-questions 

Windows GPT 所需的分区:EFI 系统分区

可扩展固件接口系统分区 (ESP)

ESP 包含 NTLDR、HAL、Boot.txt 和启动系统所需的其他文件,例如驱动程序。 分区 GUID 定义了 ESP:

DEFINE_GUID (PARTITION_SYSTEM_GUID, 0xC12A7328L, 0xF81F, 0x11D2, 0xBA, 0x4B, 0x00, 0xA0, 0xC9, 0x3E, 0xC9, 0x3B)

GPT 磁盘和 ESP

否,MBR 磁盘也可以包含 ESP。 UEFI 指定从 GPT 或 MBR 启动。 MBR 磁盘上的 ESP 由分区类型 0xEF 标识。 但是,Windows 不支持从 MBR 磁盘或 0xEF 分区启动 UEFI。

ESP 的大小

ESP 大约为 100MB。

在单个磁盘上包含两个 ESP

不应创建此类配置,而且 Windows 中不支持此类配置。

在两个不同的磁盘上包含两个 ESP

可以复制 ESP 分区以获得高可用性配置。 使用软件卷时,必须手动进行复制,并且必须手动同步内容。 硬件供应商可以提供其他高可用性解决方案。 无法镜像 ESP 分区。

Microsoft 在 ESP 中放置哪些内容

Microsoft 将 HAL、加载程序和启动操作系统所需的其他文件放在 ESP 中。

ESP 在磁盘上的位置

应将 ESP 放在磁盘上的第一个位置。 将 ESP 放在磁盘上的第一个位置的主要好处是,当 ESP 在逻辑上位于你要尝试跨越的两个数据分区之间时无法跨越卷。

系统或设备制造商在 ESP 中添加内容

ESP 应仅包含启动操作系统所需的文件、在操作系统启动之前运行的平台工具或者必须在操作系统启动之前访问的文件。 例如,执行预启动系统维护所需的文件必须放在 ESP 中。

在操作系统运行时使用的其他增值文件或诊断工具不应放在 ESP 中。 必须注意的是,ESP 中的空间是有限的系统资源;它的主要用途是为启动操作系统所需的文件提供存储空间。

系统制造商放置平台诊断工具或其他增值文件等文件

系统制造商的首选做法是将增值内容放在 OEM 特定的分区中。 如同 MBR OEM 分区一样,GPT OEM(或其他未识别的)分区的内容不会公开(提供驱动器号或在卷列表中返回)。 警告用户删除分区可能导致系统无法运行。 OEM 特定的分区应放在磁盘上的 MSR 之前、任何 ESP 之后。 尽管这不是体系结构的要求,但这种放置方式与将 ESP 放在第一个位置具有相同的好处。 例如,当 OEM 特定的分区在逻辑上位于你要尝试跨越的两个数据分区之间时无法跨越卷。

放置在 ESP 中是为操作系统预启动环境中执行的应用程序或文件提供的一个选项。 但是,ESP 在体系结构上是共享的空间,代表一种有限的资源。 应认真考虑 ESP 中的空间消耗。 与操作系统预启动环境无关的文件不应放在 ESP 中。

Microsoft 保留的分区 (MSR)

Microsoft 保留的分区 (MSR) 在每个磁盘驱动器上保留以后供操作系统软件后使用的空间。 GPT 磁盘不允许隐藏的扇区。 以前使用隐藏扇区的软件组件现在将为组件特定的分区分配 MSR 的一部分。 例如,将某个基本磁盘转换为动态磁盘会导致该磁盘上的 MSR 大小减小,并且新建的分区将保存动态磁盘数据库。 MSR 具有分区 GUID:

DEFINE_GUID (PARTITION_MSFT_RESERVED_GUID, 0xE3C9E316L, 0x0B5C, 0x4DB8, 0x81, 0x7D, 0xF9, 0x2D, 0xF0, 0x02, 0x15, 0xAE)

需要 MSR 的磁盘

每个 GPT 磁盘必须包含一个 MSR。 磁盘上的分区顺序应该是 ESP(如果有)、OEM(如果有)和 MSR,然后是主数据分区。 在创建其他主数据分区之前先创建 MSR,这一点特别重要。

MSR 的创建责任

在首次将磁盘分区信息写入驱动器时必须创建 MSR。 如果制造商将磁盘分区,必须同时创建 MSR。 如果 Windows 在安装过程中将磁盘分区,则 Windows 会创建 MSR。

为何在首次将磁盘分区时必须创建 MSR

将磁盘分区后,就没有剩余的可用空间用来创建 MSR。

MSR 的大小

在最初创建 MSR 后,其大小取决于磁盘驱动器的大小:

  • 在大小小于 16GB 的驱动器上,MSR 为 32MB。
  • 在大于或等于 16GB 的驱动器上,MSR 为 128MB。

随着将 MSR 划分到其他分区,它会变得更小。

Windows GPT ESP 实现

Windows 所需的分区

对于 UEFI 系统,启动驱动器必须包含一个 ESP、一个 MSR,以及至少一个包含操作系统的基本数据分区。 即使在系统上安装了多个操作系统,该系统上也只应存在一个 ESP。 在镜像启动配置中,实际上可以有两个驱动器包含 ESP,但它们被视为同一 ESP 的冗余副本。 每个数据驱动器必须至少包含一个 MSR 和一个基本数据分区。

驱动器上的所有基本数据分区都应该是连续的。 如上所述,在数据分区之间放置一个 OEM 特定的分区或其他未识别的分区会对以后的卷跨越施加限制。

基本数据分区

基本数据分区对应于主 MBR 分区 0x6 (FAT)、0x7 (NTFS) 或 0xB (FAT32)。 可以使用驱动器号或装载点和/或其他卷设备对象来装载每个基本分区。 每个基本数据分区在 Windows 中以卷设备对象的形式表示,并可以选择以装载点或驱动器号的形式表示。

标识基本数据分区

该分区具有以下分区类型 GUID

DEFINE_GUID(PARTITION_BASIC_DATA_GUID、0xEBD0A0A2L、0xB9E5、0x4433、0x87、0xC0、0x68、0xB6、0xB7、0x26、0x99、0xC7);

ESP 分区对最终用户的可见性

ESP 分区不会隐藏,但也不会为它分配驱动器号。 除非分配了驱动器号,否则它不会出现在资源管理器中,但某些工具能够列出它。

MSR 和 OEM 特定的分区对最终用户的可见性

用户在 Windows 资源管理器中看不到这些分区,而任何已识别到的文件系统也不会向旧式程序(例如上下文索引编制)公开。 OEM 特定的分区和其他未识别的分区仅在磁盘管理 MMC 管理单元中可见,因为它们没有可识别的文件系统。

Windows 默认装载的分区

Windows 仅公开基本数据分区。 可以装载其他使用 FAT 文件系统的分区,但不能以编程方式公开。 只为基本数据分区分配驱动器号或装载点。

将会装载 ESP FAT 文件系统,但不会公开。 这样,在 Windows 中运行的程序就可以更新 ESP 的内容。 使用 mountvol /s 为 ESP 分配驱动器号可以访问该分区。 访问 ESP 需要管理员特权。 尽管 MSR 以及从 MSR 创建的任何分区都可以使用可识别的文件系统,但不会公开任何此类分区。

Windows 无法识别任何 OEM 特定的分区或与其他操作系统关联的分区。 使用可识别文件系统的、未识别到的分区被视为 ESP。 将会装载这些分区,但不会公开。 与 MBR 磁盘不同,OEM 特定的分区与其他操作系统分区之间没有实际区别;所有这些分区都是“未识别”的分区。

用户如何查看 ESP、OEM 和其他未识别的分区

用户可以使用磁盘管理工具(例如磁盘管理实用工具)或 diskpart.exe Windows 命令行。 MSR 以及从 MSR 创建的任何分区只能通过命令行查看。

动态磁盘

动态磁盘使用两个不同的 GPT 分区

  • 一个对应于 MBR 分区 0x42 的数据容器分区,其 GUID 为:DEFINE_GUID (PARTITION_LDM_DATA_GUID, 0xAF9B60A0L, 0x1431, 0x4F62, 0xBC, 0x68, 0x33, 0x11, 0x71, 0x4A, 0x69, 0xAD)

  • 一个包含动态配置数据库的分区,其 GUID 为:DEFINE_GUID(PARTITION_LDM_METADATA_GUID, 0x5808C8AAL, 0x7E8F, 0x42E0, 0x85, 0xD2, 0xE1, 0xE9, 0x04, 0x34, 0xCF, 0xB3);

卷是在数据容器中创建的,默认会装载。 同样,此数据容器分区与 0x42 MBR 分区的内容完全相同。

将基本磁盘转换为动态磁盘

对于能够转换为动态磁盘的驱动器,该驱动器上的所有基本数据分区必须是连续的。 如果其他未识别的分区隔开了基本数据分区,则无法转换磁盘。 这也是在创建任何基本数据分区之前必须先创建 MSR 的原因之一。 转换过程的第一步是隔离 MSR 的一部分以创建配置数据库分区。 然后将所有不可启动的基本分区合并成单个数据容器分区。 启动分区保留为单独的数据容器分区。 这类似于主分区转换。

Windows XP 和更高版本的 Windows 与 Windows 2000 的不同之处在于,基本分区和扩展分区优先转换为单个 0x42 分区,而不是像 Windows 2000 中那样保留为多个不同的 0x42 分区。

混合了 GPT 和 MBR 动态磁盘的系统

是的。 有关详细信息,请参阅“在同一系统上混合搭配使用 GPT 和 MBR 磁盘会发生什么情况?”

装载特定的分区

可以使用下表中列出的工具访问不同类型的 GPT 磁盘分区。

工具Windows固件
Diskpart.efi 磁盘分区工具 ESP MSR 数据
Diskpart.exe 磁盘分区工具ESP MSR 数据 
Diskmgmt.msc 逻辑磁盘管理器ESP 数据 
Explorer.exe 文件资源管理器数据 

使用 Microsoft 平台 SDK API,你还可以开发自己的工具在 GPT 磁盘分区的基元级别访问这些分区。

如何在 Windows 中管理 GPT 磁盘

GPT 和 MBR 磁盘的管理方式相同。 可以使用 Diskpart.exe 命令提示符实用工具或磁盘管理器管理单元,将磁盘格式化为 GPT 或 MBR。 可以在 GPT 和 MBR 磁盘上创建卷,这两种磁盘可以在同一个动态磁盘组中混用。

FTdisk 集

从 Windows XP 开始,Windows 上不再支持 MBR 或 GPT 磁盘的 FTdisk 集。 只能通过动态磁盘来支持逻辑卷。

将磁盘从 GPT 转换为 MBR,或反之

Microsoft 提供了用于将磁盘从 MBR 转换为 GPT 的 MBR2GPT.exe

GPT 磁盘支持的文件系统

建议在所有基本数据分区和所有动态卷上使用 NTFS。 Windows 安装程序和磁盘管理管理单元仅提供 NTFS。 为了规避这种问题,必须通过 Format 命令行工具显式格式化分区或卷。

操作 GPT 磁盘及其内容

创建 GPT 磁盘

只能在未分区的空磁盘(原始磁盘或空的 MBR 磁盘)上创建 GPT 磁盘。 有关创建 GPT 磁盘的详细信息,请参阅使用 GPT 驱动器

转换 MBR 或 GPT 磁盘

可将现有的分区格式转换为另一种格式。 有关详细信息,请参阅以下 TechNet 文章:

不要逐扇区创建 GPT 磁盘的副本

磁盘和分区 GUID 将不再唯一。 这种情况绝对不能发生。 可以逐扇区创建 ESP 或基本数据分区的内容副本。

使用 OPK 映像工具复制整个 GPT 磁盘

可以使用 OPK 映像工具复制整个 GPT 磁盘;但是,有一些重要事项需要注意。 OEM 预安装工具包 (OPK) 会将磁盘和分区 GUID 初始化为零。 首次启动 Windows 时,操作系统将生成唯一的 GUID。 OPK 仅支持生成 ESP、MSR 和基本数据分区。

如果应用程序记录了任何磁盘或分区 GUID,则它可能会中断。 依赖于 GUID 的系统制造商或应用程序供应商提供的任何应用程序、驱动程序、实用工具或固件实现都应该能够处理从 OPK 初始化值更改为操作系统生成的值的 GUID。

Diskpart.efi MAKE 命令

OEM 可以通过 Diskpart.efi MAKE 命令简化操作系统预安装和系统恢复。 可以轻松扩展此命令,以便为平台创建“默认”磁盘配置。 例如,系统制造商可以扩展 MAKE 命令,以使用 ESP、MSR、OEM 特定的分区和一个基本数据分区自动对启动驱动器进行分区。

例如,假设有一种可能的磁盘配置,其名为 BOOT_DISK。 在发生企业故障恢复期间,MAKE BOOT_DISK 允许客户将启动磁盘完全重新分区为原始出厂默认设置。

检测重复的磁盘或分区 GUID

如果 Windows 检测到重复的磁盘或分区 GUID,它将在检测时为任何重复的磁盘 GUID、MSR 分区 GUID 或 MSR 基本数据 GUID 生成新的 GUID。 这类似于 Windows 2000 中的重复 MBR 签名处理。 动态容器或数据库分区上存在重复 GUID 会导致不可预测的结果。

https://learn.microsoft.com/zh-cn/windows-hardware/manufacture/desktop/windows-and-gpt-faq?view=windows-11 





Pre: Microsoft SQL SERVER 2000 在Windows 10/11中安装

Next: Windows 11 先用User登录,之后打开Administrator后登录失败,重启后登录界面不显示其它用户

16
Table of content