在使用 BootCamp 进行双启动的 MacBook 上,将 HDD 移至光驱托架,Windows 不再启动

在使用 BootCamp 进行双启动的 MacBook 上,将 HDD 移至光驱托架,Windows 不再启动

这是 2012 年款的 MacBook Pro 13 英寸,配备 500 GB 硬盘和光驱。我将其与 OS X 和 Windows 10 双启动一起使用,没有任何启动问题。如果我在OptionOS X 启动前按下,将有三个选项,分别是“Macintosh HD”、“恢复”和“Windows”(应该是这些分区的标签)。

我刚买了一个 SSD,想把 SSD 放在原来的硬盘托架上 - 实际上我已经这样做了。旧 HDD 使用第二个 HDD 托架连接到光驱托架。我做的就这些。我没有重新分区,只是将硬盘按原样移动。

$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                                                   *240.1 GB   disk0
/dev/disk1 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:                  Apple_HFS Macintosh HD            345.2 GB   disk1s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk1s3
   4:       Microsoft Basic Data WINDOWS                 154.0 GB   disk1s4

在我完成所有这些操作后,OS X 可以完美启动,但我可以在系统中看到 HDD 变成disk1- 原来是disk0。然后,Windows 不再启动。我仍然可以在启动菜单中看到完全相同的内容,但如果我选择 Windows,则会出现黑屏,光标闪烁,并且 Windows 永远不会启动。

我用 Google 做了一些研究,但很少看到和我一模一样的问题。有些人在重新分区硬盘后对 BootCamp 有异议,而我的情况并非如此。有些人在第二块硬盘上安装 Windows 时遇到了问题,而我的情况也不是如此 - 实际上,这些问题的一些答案建议他们先在硬盘上安装 Windows,然后再将硬盘移到光驱托架上...(我认为他们没有使用 BootCamp...)

我相信我的 MBR 仍然是健全且正确的,并且 Windows 分区现在已被标记。

$ sudo fdisk -e /dev/disk1
Password:
fdisk: could not open MBR file /usr/standalone/i386/boot0: No such file or directory
Enter 'help' for information
fdisk: 1> p
Disk: /dev/disk1    geometry: 60801/255/63 [976773168 sectors]
Offset: 0   Signature: 0xAA55
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
 1: EE 1023 254  63 - 1023 254  63 [         1 -     409639] <Unknown ID>
 2: AF 1023 254  63 - 1023 254  63 [    409640 -  674312704] HFS+        
 3: AB 1023 254  63 - 1023 254  63 [ 674722344 -    1269536] Darwin Boot 
*4: 07 1023 254  63 - 1023 254  63 [ 675993600 -  299835101] HPFS/QNX/AUX
fdisk: 1> exit

请不要考虑我为什么购买 SSD……目前我只想用尽可能少的努力解决这个问题。如果可能的话,我现在宁愿从光驱硬盘启动,而不是尝试将所有内容重新安装到 SSD 上。

现在 BootCamp Assistant 允许我选择使用哪个硬盘。如果我选​​择第二个硬盘,将有一个选项可用,即删除 Windows。我不知道这是否表明我想要的是不可能的。

如果不可能的话 - 有没有办法将 Windows 安装移动到 SSD 而无需重新安装?我有一个 Windows PE 启动 USB,可用于修复启动菜单。


因为有人说这可能是 BCD 问题,所以我将我的 BCD 列表粘贴在这里:

Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=C:
description             Windows Boot Manager
locale                  zh-CN
inherit                 {globalsettings}
default                 {default}
resumeobject            {77da1021-90b9-11e5-9a63-9c85ed0d120f}
displayorder            {default}
toolsdisplayorder       {memdiag}
timeout                 30

Windows Boot Loader
-------------------
identifier              {default}
device                  partition=C:
path                    \WINDOWS\system32\winload.exe
description             Windows 10
locale                  zh-CN
inherit                 {bootloadersettings}
recoverysequence        {da049ca7-90b9-11e5-9a63-9c85ed0d120f}
recoveryenabled         Yes
allowedinmemorysettings 0x15000075
osdevice                partition=C:
systemroot              \WINDOWS
resumeobject            {77da1021-90b9-11e5-9a63-9c85ed0d120f}
nx                      OptIn
bootmenupolicy          Standard

真的不知道如何修复这个问题,因为项目上写的C:不是磁盘 ID 或其他任何东西...我开始担心这不是 BCD 问题......

答案1

可能是 HDD 被赋予了不同的磁盘号,因此 BCD 无法找到 Windows 的安装位置。我自己不是 Mac 用户,所以我不确定如何修复此问题。从 Windows 磁盘启动并选择修复选项可能会有所帮助,尽管我再次不确定这在 Mac 上会如何工作。(在运行 BootCamp 的 Mac 上使用 Windows 磁盘并不安全,详情见下文评论)

答案2

有点晚了,但也许其他人仍在看这个。

首先,磁盘的第一个扇区上需要有一个标识 Windows 分区的 MBR。默认情况下,使用磁盘实用程序格式化磁盘时,情况并非如此 - 相反,只有 GUID 分区表(位于 MBR 之后)会列出它 - 但这样 Bootcamp 就无法启动 Windows。

修复这个问题很棘手。

我在这里为此写了一些程序:http://blog.tempel.org/search/label/BootCamp和这里:http://www.tempel.org/WindowsWithoutBootCampAssistant

您还可以尝试看看 Boot Runner (https://twocanoes.com/products/mac/boot-runner/)帮助更新您的分区和 Windows 启动记录。

相关内容