我已经安装了 ubuntu,但是现在无法启动到 Windows。这里是我的启动修复输出。
我怎么解决这个问题?
答案1
答案2
您有一个混合模式 (BIOS/EFI) 安装:Windows 安装在 BIOS/CSM/传统模式下/dev/sdb
,Ubuntu 安装在 的 EFI/UEFI 模式下/dev/sda
。(大多数此类混合模式安装都是反过来的。)在不同模式下安装的操作系统上实现双启动工作,在最好的情况下很尴尬,在最坏的情况下则是不可能的。
鉴于 Windows 在这方面不如 Linux 灵活,我建议为 Linux 安装 BIOS 模式版本的 GRUB。请尝试以下方法:
- 启动到 Linux。
- 使用 GParted、
parted
或gdisk
,在磁盘的最末端创建一个 ~1MiB 分区。如果您使用 GParted 或parted
,请为其添加一个bios_grub
标志。如果您使用gdisk
,请为其添加类型代码 EF02。GParted 和/或 可能parted
会拒绝创建如此小的分区,但gdisk
肯定会这样做。 - 重新启动至 Linux Live CD。启动处于 BIOS/CSM/传统模式。这通常可以通过在固件的内置启动管理器中选择一个启动选项来实现缺乏字符串“EFI”或“UEFI”。遗憾的是,具体步骤在不同的计算机之间差别很大,因此您可能需要就这一点进行实验或寻求更多帮助。
- 再次运行 Boot Repair 并告诉它重新安装 GRUB。
此时,您应该能够在 BIOS 模式下启动 Linux 和 Windows,由 GRUB 控制启动过程。不过,您可能需要调整启动选项,才能使 BIOS/CSM/传统模式启动成为默认设置。
不幸的是,一些 EFI 存在错误,可能会使从 GPT 磁盘启动 BIOS/CSM/传统模式的问题变得复杂。检查此网页如果您无法让 GRUB 在 BIOS/CSM/传统模式下启动。在最坏的情况下,您可能需要/dev/sda
从 GPT 转换为 MBR。
另一种方法是将 Windows 转换为以 EFI 模式启动。这将需要/dev/sdb
从 MBR 转换为 GPT 并安装 EFI 模式的 Windows 启动加载程序。此过程如下所述这里,如果你想追求它。