Windows + Ubuntu 双系统开机直接进 Windows 的解决记录 📅 2026/8/18 13:09:32 Windows Ubuntu 双系统开机直接进 Windows 的解决记录问题安装 Ubuntu Windows 双系统后按F12可以手动选择 Ubuntu选择 Ubuntu 后GRUB 可以正常显示 Ubuntu 和 Windows但如果开机不操作就会直接进入 Windows说明Ubuntu 正常 GRUB 正常 Windows 正常真正的问题是BIOS/UEFI 每次重启都会把 Windows Boot Manager 放到第一启动项。尝试过的方法1. 修改 GRUB 菜单编辑sudonano/etc/default/grub修改GRUB_TIMEOUT_STYLEmenu GRUB_TIMEOUT10然后sudoupdate-grub这一步成功GRUB 可以显示 Ubuntu 和 Windows。2. Ubuntu 中修改启动顺序查看sudoefibootmgr修改 Ubuntu 为第一启动项sudoefibootmgr-o0003,0000,0001虽然当时修改成功但重启后又变成 Windows 第一。所以失败原因是BIOS 重启后又把 Windows Boot Manager 调回第一位3. Windows 中修改 UEFI 启动顺序管理员 CMDbcdedit /enum firmware然后把 Ubuntu 调到第一位。修改成功但重启后还是被恢复成Windows Boot Manager 第一所以再次确认这台电脑的 BIOS 会自动优先 Windows Boot Manager。最终成功的方法既然 BIOS 一定要启动 Windows Boot Manager那就不再修改“谁排第一”。而是修改 Windows Boot Manager 实际加载的 EFI 文件。修改前先备份bcdedit /export C:\bcd-backup然后执行bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efi检查bcdedit /enum {bootmgr}看到path \EFI\ubuntu\shimx64.efi修改成功。原理原来的启动过程BIOS ↓ Windows Boot Manager ↓ Windows修改后BIOS ↓ Windows Boot Manager 入口 ↓ Ubuntu shim ↓ GRUB ↓ 选择 Ubuntu / Windows也就是说BIOS 还是认为自己在启动 Windows Boot Manager但实际上这个入口被改成先加载 Ubuntu 的 GRUB。这样就绕过了 BIOS 强制 Windows 第一的问题。目前的小问题进入 GRUB 前会短暂出现类似Invalid Parameter falling back to default loader停留几秒后仍然可以正常进入 GRUB。目前不影响正常使用所以暂时不继续修改。恢复方法如果以后想恢复成开机直接进入 Windows在 Windows 管理员 CMD 执行bcdedit /set {bootmgr} path \EFI\Microsoft\Boot\bootmgfw.efi然后检查bcdedit /enum {bootmgr}看到path \EFI\Microsoft\Boot\bootmgfw.efi就恢复完成。总结这次问题的核心BIOS 总是自动把 Windows Boot Manager 放第一普通修改启动顺序的方法都会被恢复。最终解决思路不再改启动顺序 而是让 Windows Boot Manager 入口先加载 Ubuntu GRUB最终实现开机 ↓ GRUB ↓ 选择 Ubuntu / Windows