请帮助我。我在尝试双重启动我的机器时失去了理智。
这是我的机器的规格:
- 宏碁 4755g
- Windows 10 的 SSD 和 CentOS 8 的 HDD(分区,不使用整个磁盘)
问题:
- CentOS grub 无法检测到 Windows 10 引导加载程序。
以下是我为纠正该问题所做的步骤:
安装 ntfs-3g 并运行 sudo grub2-mkconfig > /dev/null。它仍然看不到 Windows 引导加载程序。事实上, sudo grub2-mkconfig > /dev/null 不会返回任何内容。
还尝试在 grub 上手动添加 chainloder,仍然没有。
os-prober 不返回任何内容
问题的可能原因
- Windows 10 使用 BIOS 安装,CentOS 使用 UEFI 安装
我只是对 CentOS 如何在我的机器上安装 UEFI 感到困惑。我很确定我的机器只支持 BIOS。注意:为了制作可启动 USB,我使用了带有 MBR 选项的 rufus。
最后说明:
我想如果我将CentOS的bootloader从UEFI转换为BIOS,这个问题就可以解决。但可以转换吗?如何转换?
答案1
你安装ntfs支持了吗?这对我有用:
sudo yum install epel-release
sudo yum install ntfs-3g
然后复制 grub 配置文件: cd /boot/grub2
sudo cp grub.cfg grub.cfg.bak
最后创建一个新的 grub 配置:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
答案2
是的,看起来像是 BIOS/UEFI 混合体;重新寻找使用其他工具链构建,而不是 GNU EFI(忘记名字了,抱歉),可以支持从 EFI 模式启动 BIOS/CSM/Legacy 目标。
但我很确定您最终希望双启动与固件保持一致,无论是 BIOS/BIOS 还是 UEFI/UEFI;无法在 BIOS 引导的系统上安装 UEFI 引导加载程序(即使它是处于“传统”模式且支持 UEFI 的系统)。
另请参阅 Refind 作者的精彩UEFI引导加载程序的解释,它当时帮助我在 ALT Linux 中实现了 UEFI 支持。
答案3
我在 Windows 10 和 Ubuntu 20.04(和 Centos 8)上遇到了同样的问题以下步骤适用于任何 Windows 10 和 Linux 双启动。请检查您的笔记本电脑是否支持 UEFI、在 BIOS 中启用 UEFI 并且 Linux 是否以 UEFI 模式安装。
安装窗口 10
安装Linux
将 os-prober 安装到 Linux(如果未安装)
启动进入 Windows 10
禁用快速启动和休眠。在提升的 cmd 中运行:
powercfg.exe /休眠关闭
以恢复模式重新启动(按 Shift 并选择重新启动)
选择命令行(在恢复模式下)并输入:
mbr2gpt.exe /转换
请注意,在这种情况下,如果没有 UEFI,您将无法启动 Windows。
引导至 Linux 并根据您的 Linux 更新 grub 对于 CentOS8: grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg 生成 grub 配置文件 ... 在 /dev/sda1@/EFI/ 上找到 Windows 启动管理器Microsoft/Boot/bootmgfw.efi 已完成 Ubuntu:os-prober update-grub2
您现在可以重新启动并在 GRUB 菜单中看到 Windows 启动管理器