Windows 对超过 2 TB 的硬盘的支持

本文介绍 Windows 支持存储容量超过 2 TB 的硬盘的方式,并介绍了如何进行磁盘初始化和磁盘分区以最大程度地利用磁盘空间。

适用于:Windows Server 2022 Standard and Datacenter、Windows Server 2019、Windows Server 2016、Windows Server 2012 R2
原始 KB 编号: 2581408

摘要

要使操作系统完全支持容量超过 2 TB(2 万亿字节)的存储设备,必须使用 GUID 分区表 (GPT) 分区方案初始化设备。 此方案支持所有存储容量。 如果用户打算从这些大型磁盘启动计算机,则系统的基本固件接口必须使用统一可扩展固件接口 (UEFI),而不是 BIOS。

本文概述了自 Windows XP 以来所有 Windows 版本的 Microsoft 支持。 另外,还介绍了使用这些设备的所有存储容量的要求。

注意

  • 本文提到的磁盘容量采用 2 的幂(而非 10 的幂),这是存储设备容量标签上更常见的标定方式。 因此,如果提及“2 TB”,则产品的实际标定容量为 2.2 TB
  • 本文中所述的特定于操作系统的行为也适用于该系统的服务器变体。 因此,提及的 Windows 7 包括 Windows Server 2008 R2,Windows Vista 包括 Windows Server 2008,Windows XP 包括 Windows Server 2003 和 Windows Server 2003 R2。

详细信息

使用名为“逻辑块寻址 (LBA)”的方案来解决新式存储设备的管理问题。 该方案涉及的是构成媒体的逻辑扇区的排列。 “LBA0”表示设备的第一个逻辑扇区,最后一个 LBA 标定表示设备的最后一个逻辑扇区,每个扇区对应一个标签。 要确定存储设备的容量,请将设备内的逻辑扇区数乘以每个逻辑扇区的大小。 当前标准大小是 512 字节。 例如,要获得容量为 2 TB 的设备,则需要 3,906,250,000 个 512 字节的扇区。 但是,计算机系统需要使用 32 个信息位(1 和 0)来表示这样大的数。 因此,任何大于可使用 32 位表示的存储容量都需要一个额外的位。 也即 33 位。

此计算中的问题在于,大多数基于 Windows 的新式计算机所使用的分区方案都是 MBR(主启动记录)。 此方案为可用于表示逻辑扇区数的位数设置了 32 位的限制。

2 TB 限制即是此 32 位限制的结果。 由于使用 32 位可表示的最大数字为 4,294,967,295,因此通过 512 字节的扇区可以换算为 2.199 TB(大约 2.2 TB)。 因此,使用 MBR 分区方案无法对超过 2.2 TB 的容量进行寻址。

要将更多位用于寻址,必须使用 GPT 初始化存储设备。 此分区方案允许在逻辑扇区中使用多达 64 个信息位。 它换算出的理论限制为 9.4 ZB(94 亿 TB)。 但是,影响 GPT 的问题是,当前大多数系统都是基于老旧的 BIOS 平台。 BIOS 仅支持经过 MBR 初始化的磁盘来启动计算机。 要从使用 GPT 初始化的设备重启,系统必须支持 UEFI。 默认情况下,许多当前系统可以支持 UEFI。 Microsoft 预计未来大多数系统都将具备此支持。 客户应咨询其系统供应商,以确定其系统能否支持 UEFI 和存储容量大于 2 TB 的磁盘。

不可启动数据卷的总体要求

要使系统能够解决存储容量超过 2 TB 的设备的最大容量问题,则需要满足以下先决条件:

  • 必须使用 GPT 初始化磁盘。

  • Windows 必须属于以下版本(32 位或 64 位,除非另有说明,但包括所有 SKU 版本):

    • Windows Server 2008 R2(仅支持 64 位版本)
    • Windows Server 2008
    • Windows 7
    • Windows Vista
  • 必须安装存储控制器制造商的最新存储驱动程序。 例如,如果系统使用的 Intel 存储控制器设置为“RAID”模式,请确保拥有来自 Intel 支持站点的最新适用驱动程序。

  • 总体而言,你应与系统供应商联系,以确定系统是否支持设备容量大小超过 2 TB。

可启动系统卷的总体要求

假设你需要满足以下条件:

  • 有一个可以安装 Windows 的存储设备。
  • 使存储设备可用于系统启动。
  • 使操作系统能够解决该设备的最大存储容量超过 2 TB 的问题。

若要满足这些条件,需要满足以下先决条件:

  • 必须使用 GPT 初始化磁盘。

  • 系统固件必须使用 UEFI。

  • Windows 必须属于以下版本(仅限 64 位,但包括所有 SKU 版本):

    • Windows Server 2008 R2
    • Windows Server 2008
    • Windows 7
    • Windows Vista
  • 必须安装存储控制器制造商的最新存储驱动程序。 例如,如果系统使用的 Intel 存储控制器设置为“RAID”模式,请确保拥有来自 Intel 支持站点的最新适用驱动程序。

注意

Windows 不支持在 32 位版本的 Windows 上使用 UEFI 系统启动经过 GPT 初始化的卷。 此外,旧版 BIOS 系统不支持启动 GPT 分区卷。 请咨询你的系统供应商,以确定系统是否同时支持 UEFI 和启动存储容量大于 2 TB 的设备。

支持矩阵

下表列出了 Microsoft 对本文中讨论的各种概念的支持。 此信息提供了有关存储容量大于 2 TB 的磁盘的总体支持说明。

表 1:Windows 对数据卷形式的分区方案的支持

系统警报 MBR 混合 MBR GPT
Windows 7 支持 不支持 支持
Windows Vista 支持 不支持 支持
Windows XP 支持 不支持 不支持

混合 MBR 是一种备选分区样式,不受任何版本的 Windows 支持。

表 2:Windows 对系统固件的支持

系统警报 BIOS UEFI
Windows 7 支持 支持
Windows Vista 支持 支持
Windows XP 支持 不支持

表 3:Windows 对引导卷的引导固件和分区方案组合的支持

系统警报 BIOS + MBR UEFI + GPT BIOS + GPT UEFI + MBR
Windows 7 支持 支持;
需要 64 位版本的 Windows
不支持引导卷 不支持引导卷
Windows Vista 支持 支持;
需要 64 位版本的 Windows
不支持引导卷 不支持引导卷
Windows XP 支持 不支持 不支持引导卷 不支持引导卷

表 4:Windows 对于作为非引导数据卷的大容量磁盘的支持

系统警报 >2 TB 单磁盘 - MBR >2 TB 单磁盘 - 混合 MBR >2 TB 单磁盘 - GPT
Windows 7 支持最多 2 TB 的可寻址容量** 不支持 支持所有容量
Windows Vista 支持最多 2 TB 的可寻址容量** 不支持 支持所有容量
Windows XP 支持最多 2 TB 的可寻址容量** 不支持 不支持

如果使用 MBR 分区方案初始化磁盘,则 Windows 无法使用超过 2 TB 的容量。 例如,对于使用 MBR 初始化的单个 3 TB 磁盘,Windows 最多可以创建前 2 TB 的分区。 但是,剩余容量无法寻址,因此无法使用。

使用 GPT 初始化数据磁盘

以下步骤演示如何使用 GPT 分区方案初始化新磁盘,以帮助确保 Windows 能够使用最大可用存储容量。 在尝试这些步骤之前,请务必备份所有重要数据。

  1. 单击“开始”,在“开始搜索”框中键入“diskmgmt.msc”,右键单击“diskmgmt.msc”,然后单击“以管理员身份运行”。 如果需要,请输入具有管理员权限的用户帐户的凭据。

    注意

    当 Windows 检测到未初始化的磁盘时,以下窗口将会打开,以提示你初始化磁盘。

    在“初始化磁盘”对话框中初始化磁盘。

  2. 在“初始化磁盘”对话框中,单击“GPT (GUID 分区表)”,然后按“确定”。

    注意

    如果选择此选项,则低于(且包含)Windows XP 的 Windows 版本将不能识别此硬盘。

  3. 检查“磁盘管理”窗口以验证磁盘是否已初始化。 如果是,则窗口底部该磁盘的状态行应指示此磁盘“联机”

    检查磁盘是否处于联机状态。

  4. 初始化磁盘后,必须创建一个分区,然后使用文件系统格式化该分区。 这是为了能够在该分区中存储数据,并为该分区分配名称和驱动器号。 为此,请右键单击该磁盘状态行右侧的未分配空间, 然后单击“新建简单卷”。 按照分区向导中的步骤操作以完成此过程。

将 MBR 磁盘转换为 GPT 磁盘

如果以前已使用 MBR 分区方案初始化磁盘,请按照以下步骤使用 GPT 方案初始化磁盘。 在尝试这些步骤之前,请务必备份所有重要数据。

  1. 单击“开始”,在“开始搜索”框中键入“diskmgmt.msc”,右键单击“diskmgmt.msc”,然后单击“以管理员身份运行”。 如果需要,请输入具有管理员权限的用户帐户的凭据。

  2. 在“磁盘管理”窗口中,检查底部的磁盘状态行。 在下面的示例中,用户具有以前使用 MBR 分区方案初始化的一个 3 TB 磁盘。 此处将该设备标记为“磁盘 1”

    检查“磁盘管理”窗口中的磁盘状态。

  3. 磁盘 1 包含两个单独的未分配部分。 此分离表示可以使用磁盘空间的前 2 TB。 但是,由于 MBR 分区方案的 32 位寻址空间的限制,剩余空间是不可寻址的。 要使系统能够完全使用存储设备的总容量,则必须将磁盘转换为使用 GPT 分区方案。

  4. 右键单击要转换的磁盘的左侧标签,然后单击“转换为 GPT 磁盘”

    注意

    显示器现在应显示未分配的可用空间总量。

    显示未分配的完整可用空间量。

  5. 现在磁盘已初始化为可以访问完整的存储空间,你必须创建一个分区,然后使用文件系统格式化该分区。 这是为了能够在该分区中存储数据,并为该分区分配名称和驱动器号。 为此,请右键单击该磁盘状态行右侧的未分配空间, 然后单击“新建简单卷”。 按照分区向导中的步骤操作以完成此过程。

已知问题或限制

由于转换到容量大于 2 TB 的单磁盘是最近发生的,因此 Microsoft 调查了 Windows 如何支持这些大型磁盘。 结果揭示了几个问题,这些问题适用于低于(且包含)Windows 7 Service Pack 1 和 Windows Server 2008 R2 Service Pack 1 的所有 Windows 版本。

因此,当 Windows 处理存储容量大于 2 TB 的单磁盘时,已知会发生以下错误行为:

  • 超过 2 TB 的数字容量会溢出。 这导致系统只能寻址 2 TB 之外的容量。 例如,在 3 TB 磁盘上,可用容量可能只有 1 TB。

  • 2 TB 之外的数字容量将被截断。 这会导致可寻址空间不超过 2 TB。 例如,在 3 TB 磁盘上,可用容量可能只有 2 TB。

  • 未正确检测存储设备。 在这种情况下,它不显示在“设备管理器”或“磁盘管理”窗口中。 许多存储控制器制造商提供更新的驱动程序,为超过 2 TB 的存储容量提供支持。 请与你的存储控制器制造商或 OEM 联系,以确定对于大于 2 TB 的单磁盘容量提供哪些可下载的支持。

SCSI 感知数据

当磁盘遇到与不可读取或不可写入扇区相关的错误时,它会向操作系统报告这些错误和相关的 SCSI 感知数据。 SCSI 感知数据可能包含与发现的不可读取或不可写入的扇区的 LBA 相关的信息。

对于大于 2 TB 的 LBA 地址空间,磁盘需要采用描述符格式的 SCSI 感知数据。 Windows 7 或 Windows Server 2008 R2 不支持此格式,它们采用固定格式检索 SCSI 感知数据。 因此,所检索的 SCSI 感知数据要么不包含有关坏扇区的信息,要么包含有关坏扇区的错误信息。 管理员在查找 Windows 事件日志中所记录的坏扇区 LBA 信息时应注意此限制。