Intel Mac 不能有超过 4 个分区吗?

Intel Mac 不能有超过 4 个分区吗?

我到处都看到,由于英特尔 Mac 上的 GPT,分区不能超过 4 个。但是如果分区超过 4 个会发生什么?在我的 iMac 上,我有 EFI、Macintosh HD、Windows、Linux 和 Linux 交换分区,我能够使用 rEFIt 从所有三个操作系统启动。那么,我有 5 个分区,为什么它能工作呢?顺便说一下,我使用 Snow Leopard 的磁盘实用程序创建了分区。

答案1

基于 Intel 的 Mac 默认使用 GUID 分区表 (GPT)。GPT 默认支持最多 128 个分区(如果需要可以增加该值,但大多数分区工具不允许您这样做)。因此,在基于 Intel 的 Mac 上拥有超过四个分区没有问题。

您听到的限制是对混合 MBR 限制的扭曲,混合 MBR 是 GPT 与大多数 PC 上使用的旧主引导记录 (MBR) 分区系统的危险且违反标准的混合。在混合 MBR 中,最多GPT 分区在 MBR 数据结构中重复。MBR 限制为四个基本的分区,而在混合 MBR 中,第四个主分区由一个特殊分区占用,该分区将该磁盘标识为 GPT 磁盘。这个第四个分区经常被误认为是大多数 GPT 磁盘上存在的 EFI 系统分区 (ESP) 的 MBR 端副本,但事实并非如此。

Apple 使用混合 MBR 使 Windows 能够在 Mac 上与 OS X 实现双启动。Windows 更倾向于 MBR 数据结构,因此它将磁盘视为 MBR 磁盘,而 OS X 更倾向于 GPT 数据结构,因此它将磁盘视为 GPT 磁盘。(Linux 和 OS X 一样,将混合 MBR 视为 GPT 磁盘。)混合 MBR 不会限制您可能拥有的 GPT 分区数量,但它会限制 Windows 安装可以看到的分区数量,最多为三个。

请注意,扩展分区和扩展引导记录 (EBR) 与混合 MBR 无关 - 或者至少,它们不应该有任何关系!在 MBR 方案中,扩展分区充当逻辑分区的占位符,逻辑分区由 EBR 定义。使用此方案,MBR 磁盘可以支持大量分区 - 理论上大约是磁盘扇区的一半,尽管实际限制要低得多。但是,具有混合 MBR 的磁盘不使用扩展分区,因为维护磁盘的 GPT 和 MBR 端之间的一致性 - 对于常规混合 MBR 来说已经是一项相当具有挑战性的任务 - 将变得更加困难。

答案2

虽然 Windows 7 x86_64 支持 GPT,但它仅支持 UEFI 或 BIOS。Windows 7 不支持“Apple EFI”,它是 Intel EFI 1.1 和 Apple 自己的部分以及 UEFI 2.x 部分的组合。它严格来说不是 UEFI 2.x 实现,而所有非 Mac OS 操作系统都需要 UEFI 2.x 实现。因此,这实际上限制了 Bootcamp(或 rEFIt)用户使用 CSM(BIOS),因此需要 MBR,因为 BIOS 仅理解 MBR。

MBR=4 个分区,但当它是混合 MBR 时,其中 1 个分区被保留,如上所述,这表示整个驱动器都是 GPT,因此您会收到仅支持 MBR 的分区应用程序发出的警告。因此实际上混合 MBR 限制为 3 个分区。

理论上,您可以选择将 128 个 GPT 分区中的哪 3 个导出到混合 MBR。但大多数工具不允许您这样做。我知道的唯一一个可以这样做的工具是 gdisk。

我同意混合 MBR 违反了标准,是一种混杂。我更希望 Apple 为过去几年销售的所有机器发布完全符合标准的 UEFI 2.x 固件。尤其令人恼火的是,今天销售的全新机器仍然基于 Intel EFI 1.1,而不是 UEFI 2.x。

答案3

这不是因为 GPT。而是因为 MBR。MBR 和 GPT 兼容性存在许多问题,将分区数限制为 4。如果您根本不使用 MBR(这种情况可能会发生),一切都应该正常工作。新版本的 Windows 支持 GPT,因此有可能不使用 MBR。

如果您使用 MBR,那么我不知道发生了什么。

答案4

这里的问题是,正如 cmurphy 所说,Windows (x64) 无法使用 Apple 的 EFI 实现(基本上是 EFI 1.1)。它需要 UEFI(EFI 2.0)或 BIOS。但由于 Windows 有一个人为限制将 UEFI 与 GPT 磁盘绑定,将 BIOS 与 MBR 磁盘绑定,需要一些技巧才能实现。具体来说,EFI 1.1 上的 Windows 和 OS X 只能在 Windows 被愚弄认为它是 MBR 驱动器而实际上是 GPT(OS X 不支持 MBR)的情况下才能在单个驱动器上共存。这种技巧就是所谓的混合 MBR - 就像 cmurphy 所说的那样,这是一种危险而丑陋的黑客行为。

但是,你可以从 BIOS 启动 GPT 上的 Windows如果你有什么小的您可以从 MBR 驱动器或软盘启动。这甚至不是黑客行为,甚至可以在 Windows 32 位上运行。

基本上启动 Windows 安装/修复光盘。只需在软盘上创建系统驱动器,然后使用bcdboot将启动文件放在软盘上。使用 添加引导扇区bootsect。将 更改为{bootmgr} deviceboot从软盘启动。

步骤很详细这里

相关内容