我在尝试在 MacBook Pro(256GB SSD)上运行适用于 macOS Sierra、Windows 10 Enterprise 和 Kali Linux 的三重启动时遇到了问题。
今天,当我缩小 Windows 10 分区并安装一个小的 Kali 分区时,它会自动安装 GRUB,而无需我要求,当我重新启动时,Windows 不再出现(在我安装 reFind 后,OSX 也不再出现)。最初,我通过 Bootcamp 在驱动器上安装了 Sierra 和 Win 10,一切正常。
这是我当前的分区列表:
Disk /dev/sda: 233.8 GiB, 251000193024 bytes, 490234752 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: FDDCE2D9-5AF5-40B4-98F1-F8C077FE04D5
Device Start End Sectors Size Type
/dev/sda1 40 409639 409600 200M EFI System
/dev/sda2 409640 67540895 67131256 32G Apple Core storage
/dev/sda5 67540992 452859903 385318912 183.8G Microsoft basic data
/dev/sda6 452859904 488310783 35450880 16.9G Linux filesystem
/dev/sda7 488310784 490233855 1923072 939M Linux swap
幸好我现在可以从 Kali 安装 ntfs 驱动器并从那里获取我需要的任何文件。
/dev/sda2 是 OSX,/dev/sda5 是 Windows 10(为什么它没有显示为 sda3?),sda6/7 是 Kali。
我把 reFind 从 Kali 放到驱动器上以尝试修复该问题,但实际上它产生了更多问题,现在我根本无法进入 OSX。
启动 Windows 时出现 0xc00000e 启动错误。我尝试了网上能找到的所有建议,从安装光盘、恢复光盘启动,在 diskpart 上都没有列出 WIndows 驱动器,bootrec /fixmbr、bootrec /fixboot、bootrec /scanos、bootrec /RebuildBcd 也没有解决问题,后两者报告 0 个安装,并且 diskpart 中只列出了 /sda1 和 /sda2。
尝试过在 Mac 恢复中禁用 csrutil,但问题并未得到解决。尝试过在 Kali 中禁用 testdisk,结果显示无法恢复任何分区。
我还尝试将 Ubuntu 修复盘 ISO 下载到 USB,但它无法在这台机器上启动,但其他 USB 启动可以(我是在我的桌面上从 Win32DiskImager 写入的)。
有没有办法根据现有的文件类型重建分区表?
看起来分区上的数据都完好无损,只是启动时遇到了麻烦。如果需要,我可以从头开始重建,但我更想知道是否存在可以缓解 hfs、ntfs 和 ext4 之间差距的工具。
答案1
看来 Kali Linux grub 引导加载程序控制了 MacBook Pro 引导系统。由于这是在 MacBook Pro 笔记本电脑上,因此摆脱困境的更简单方法是先恢复 Sierra。我希望您在尝试 Kali Linux 之前通过 Time machine 备份您的 Mac。如果您可以恢复 Mac,Windows 也应该可以工作,因为您是通过 BootCamp 安装了 Windows。
您能启动 Linux 吗?如果能,请进入启动选择,看看它是否允许您选择 Sierra、Windows 10 或 Linux 启动。尝试从那里启动 Mac 和 Windows。如果可行,我的假设是正确的。您需要一位专家来帮助您找到长期解决方案。Sierra 关闭任何未签名的应用程序,这是 Mac 安全性改进的一部分。我认为 grub 引导加载程序被视为未签名的应用程序,Sierra 锁定了系统。如果我的假设正确,您可能无法启动任何操作系统。