我试图更改 bootcamp 分区的大小。以下是发生的情况(出现了错误):
- 将磁盘工具中 Mac HD 的大小从 370G 缩小到 300G,这产生了 70G 未格式化的可用空间。
- 在Paragon Hard Disk Manager中,将Bootcamp分区扩展为空闲空间,从130G扩展到200G。
- Mac OS Sierra 仍然运行良好,Win7 在选项启动中显示在可用磁盘中,但启动到 Windows 启动加载程序屏幕时显示找不到 Win7。
- 在 Paragon Hard Disk Manager 中,修复了 Win7 分区的分区引导记录。Windows 现在又可以正常启动了。应该就此打住。
- 在 Paragon HDM 中,我想我选择了修复 HD 的主引导记录。这会立即将所有 HFS+ 分区更改为一个大的可用空间,包括 EFI 和恢复分区。无法撤消,但我仍在 OS X 中运行。我有一个 2 天前的 Time Machine 备份。目前还不太担心。
- 制作了 TestDisk USB。制作了 Paragon Recovery Kit USB。将新调整大小的非工作 Windows 分区的映像从 Paragon HDM 保存到外部 HD。
- 重启。返回 Windows 启动加载程序错误屏幕。选项-重启。Mac HD 未显示在列表中,只有 Windows 分区,启动后显示错误屏幕。
- 尝试了 USB 上所有可用的分区修复和引导记录修复。能够取消删除分区并将 Mac 可用空间恢复为一个 300G HFS+ 分区,我只能通过选项启动来启动,但丢失了 EFI 和恢复分区。硬盘管理器在驱动器开头显示 209M 可用空间,这是丢失的 EFI 分区,但当我尝试恢复分区时,它说没有足够的可用空间。
- 一切都试了两次,然后再次尝试 USB,但情况可能变得更糟。
- 达到极限并制作 Sierra USB。从磁盘实用程序中清除 HD 并重新安装 Sierra,现在我又有了可用的 EFI 和恢复分区。使用迁移助手将 OS X 恢复到最新状态,并具有可用的 EFI 和恢复分区。
这就是我现在的情况。恢复启动中的 Diskutil 列表显示:恢复中的 diskutil 列表
那么……所有磁盘都怎么了?为什么 HD 位于虚拟磁盘上?是否可以从我的备份中恢复正常运行的 Windows 7?如果不行,既然 bootcamp 助手不支持,我该如何在 Sierra 中安装 Win7?
答案1
简短的回答(但有很多工作要做):
你应该清理磁盘并从备份中恢复所有内容。如果你没有备份,计划花大量时间使用类似相簿恢复单个文件——尽管你可能会幸运地使用像测试磁盘并恢复整个文件系统或两个文件系统。
长答案(但希望减少工作量):
你的问题几乎肯定是源于对混合型MBR。开箱即用的 Mac 使用GUID 分区表 (GPT),它用于大多数现代计算机。为了支持与 Windows 的双启动(至少到版本 7),Apple 使用非法的GPT 变体,也称为混合 MBR。这是 GPT 与较旧的主引导记录 (MBR)分区系统。在混合 MBR 下,GPT 是“真正的”分区表,MBR 表中最多可复制三个分区。问题是,现在您有二分区表,但大多数工具都无法理解这一点两个都必须修改分区表。如果您使用的工具只修改一个分区表,两个分区表可能会不同步。这可能会导致许多微妙和不那么微妙的问题,包括启动失败和严重的文件系统损坏。您的描述表明您使用多个工具多次修改了分区表,因此很难了解更改的历史记录或磁盘的当前状态,因此无法提供恢复磁盘的简单程序。
作为一般规则,OS X 磁盘实用程序将在 GPT 端运行,而 Windows 工具将在 MBR 端运行。但是,此规则并非 100% 可靠。您没有在描述中指定使用哪些操作系统来运行哪些分区工具;但我猜您指的是 OS X 的磁盘实用程序和 Windows 中的 Paragon 硬盘管理器。前者修改了 GPT 端,我不记得它对混合 MBR 做了什么;我不知道后者在看到混合 MBR 时的功能是什么,但考虑到您的问题,我猜它在这种情况下就像一个仅限 MBR 的工具。您报告了足够多的反复更改,即使我的假设是正确的,我也不能声称已经跟踪了所做的更改。
修复此类问题是有时有可能,但需要仔细检查 GPT 和 MBR 分区表,以便比较两者并确定哪些分区当前有效。如果您认为可以做到这一点,我建议您创建一个新的标准GPT(没有您可以使用混合 MBR 修复文件系统并备份重要文件。如果成功完成此操作,则可以创建新的混合 MBR。
具体如何检查两个分区表取决于您使用的工具。请注意,许多工具(尤其是 GUI 工具)对于分区起始点等细节的描述并不精确。您需要行业层面精度来确定您在两个分区表上看到的分区是否等效。我自己的GPT fdisk ( gdisk
)可以提供此信息。它默认对 GPT 数据进行操作;但如果您键入 ,x
然后按o
,它会显示(混合或保护)MBR 数据。其他工具可以提供相同的数据,但暂时我不确定如何(或是否)使用 OS X 或 Windows 附带的工具执行此操作。
向前进:
如果可能,请不要使用混合 MBR。不幸的是,在 Mac 上双启动 OS X 和 Windows 7(或更早版本)时,混合 MBR 或多或少是必需的。您可以考虑使用虚拟化(VirtualBox、VMWare 等)而不是双启动,以避免混合 MBR 及其危险。您也可以升级到 Windows 8 或 10;这些版本通常可以在 EFI 模式下安装在 Mac 上,该模式使用带有保护性 MBR 的 GPT,从而绕过混合 MBR 的危险。
如果你必须使用混合 MBR,请理解它。如果你需要调整使用混合 MBR 的磁盘上的分区大小,使用 GPT 感知工具!您不应该在混合 MBR 磁盘上使用仅支持 MBR 的工具 — 至少,除非您了解自己在做什么以及为什么这样做。如果您使用 GPT 分区工具调整混合 MBR 磁盘上的分区大小,您可能会发现混合 MBR 已被清除。不过,这还不算太糟,因为 GPT fdisk 等工具可以轻松创建新的混合 MBR。