grub命令行怎么打开 Windows
很多人装了双系统以后,会遇到一个很常见的场景:开机进了 GRUB 界面,想临时进 Windows,却不知道怎么操作。其实这件事不难,关键是先分清你现在看到的是什么界面,再按对应方法处理。
一、问题分析
GRUB 是 Linux 常见的引导管理器,作用是让你在开机时选择进入哪个系统。
如果电脑里同时装了 Linux 和 Windows,GRUB 通常会接管开机启动。
你现在问的“GRUB 命令行怎么打开 Windows”,实际有两种情况:
- 你想在 GRUB 菜单里直接启动 Windows。
- 你现在已经进了 GRUB 命令行,想手动找到并进入 Windows。
这两种方法不一样。
二、解决方案
方案 1:在 GRUB 菜单里直接选 Windows
这是最简单的方法。
开机后如果看到的是带菜单的 GRUB 界面,一般会有类似这些选项:
- Ubuntu
- Advanced options for Ubuntu
- Windows Boot Manager
这时候用键盘方向键选中 Windows Boot Manager,然后按 Enter,就会直接启动 Windows。
方案 2:在 GRUB 命令行里手动启动 Windows
如果你看到的是这种提示:
grub>
或者:
grub rescue>
那说明你已经进入了 GRUB 命令行,而不是普通菜单。
这时也能进 Windows,但需要手动找启动分区。
方法 A:先尝试显示菜单
在 grub> 下输入:
normal
然后按回车。
有些情况下会回到正常的 GRUB 菜单,你就可以直接选 Windows。
如果不行,再继续下面的方法。
方法 B:手动查找 Windows 启动项
在 grub> 下先查看磁盘分区:
ls
你会看到类似这样的输出:
(hd0) (hd0,gpt1) (hd0,gpt2) (hd0,gpt3)
接着一个一个查看分区内容:
ls (hd0,gpt1)/
ls (hd0,gpt2)/
ls (hd0,gpt3)/
你要找的是包含 Windows 启动文件的分区。
通常 Windows 的 EFI 启动文件会在 EFI 分区里,常见路径类似:
/EFI/Microsoft/Boot/
如果你找到这个目录,就说明这个分区里有 Windows 启动项。
方法 C:直接链式加载 Windows 启动项
如果你的电脑是 UEFI 启动,一般可以直接尝试:
set root=(hd0,gpt1)
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
boot
注意这里的 (hd0,gpt1) 只是示例,你要换成自己实际找到的 EFI 分区。
如果你不确定分区号,可以按下面步骤:
- 用
ls看有哪些分区。 - 用
ls (hdX,gptY)/找到有EFI文件夹的那个分区。 - 再执行:
set root=(hdX,gptY) chainloader /EFI/Microsoft/Boot/bootmgfw.efi boot
三、如果是 grub rescue> 怎么办
grub rescue> 比普通 grub> 更简陋,能用的命令更少,但还是可以尝试找回菜单。
先输入:
ls
找分区,然后一个个试:
ls (hd0,gpt1)/
ls (hd0,gpt2)/
如果发现某个分区里有 boot、grub、EFI 之类的目录,可以尝试设置它为根分区,例如:
set prefix=(hd0,gpt2)/boot/grub
set root=(hd0,gpt2)
insmod normal
normal
如果成功,会回到正常 GRUB 菜单,再选 Windows 启动。
四、如果找不到 Windows 启动项
有些机器明明装了 Windows,但 GRUB 里看不到 Windows Boot Manager。常见原因有这些:
- Windows 启动项没有被 GRUB 自动识别。
- BiOS/UEFI 启动模式不一致,比如 Linux 是 UEFI,Windows 是 Legacy。
- EFI 分区里的 Windows 启动文件损坏或丢失。
- GRUB 配置没有更新。
这时候可以进 Linux 后执行:
sudo update-grub
很多发行版会自动扫描 Windows 并加入启动菜单。
如果系统没有自动识别,还可以检查 os-prober 是否启用。
部分新版本 Linux 默认关闭了自动探测,需要手动开启后再更新 GRUB。
五、Windows 启动文件修复思路
如果连 bootmgfw.efi 都找不到,说明 Windows 引导文件可能有问题。
这时可以用 Windows 安装 U 盘修复:
- 用 Windows 安装盘启动电脑。
- 进入“修复计算机”。
- 打开“命令提示符”。
- 执行启动修复命令。
常见修复命令包括:
bootrec /fixmbr
bootrec /fixboot
bootrec /scanos
bootrec /rebuildbcd
如果是 UEFI 机器,还可能需要重新挂载 EFI 分区并重建启动文件。
六、注意事项
hd0,gpt1这类分区号不是固定的,必须按你的实际机器来判断。- 如果你不熟悉分区,优先用 GRUB 菜单启动,不要乱改命令。
grub>和grub rescue>不是同一个环境,后者命令更少。- 如果你要长期双系统共存,最好让 Windows 和 Linux 都用同一种启动模式,通常建议都用 UEFI。
- 如果 Windows 经常不显示,修复 GRUB 后要确认 EFI 启动项是否正常。
七、最实用的结论
如果你只是想“从 GRUB 进 Windows”,最直接的方法是:
- 有菜单时:选
Windows Boot Manager回车。 - 进了 grub 命令行时:
- 输入
ls找到 EFI 分区。 - 输入
set root=(hdX,gptY)。 - 输入
chainloader /EFI/Microsoft/Boot/bootmgfw.efi。 - 输入
boot。
- 输入
如果你是在 grub rescue> 卡住了,先尝试:
ls
set prefix=(hd0,gpt2)/boot/grub
set root=(hd0,gpt2)
insmod normal
normal
然后再从菜单进 Windows。
八、进阶补充
如果你经常需要切换系统,建议后续把 GRUB 菜单修好,让 Windows 和 Linux 都能正常显示。
这样比每次手敲命令稳得多,也更适合日常使用。常见做法就是:
- 修复 GRUB 配置
- 检查
os-prober - 确认 UEFI 启动顺序
- 保留 Windows Boot Manager
这样双系统会省很多麻烦。

还没有评论,来说两句吧...