双系统(Arch Linux+Windows11)BIOS启动项中无效Windows Boot Manager条目删除后自动恢复的解决方法咨询
双系统(Arch Linux+Windows11)BIOS启动项中无效Windows Boot Manager条目删除后自动恢复的解决方法咨询
看起来你遇到了双系统里挺常见的启动项残留问题——无效的Windows Boot Manager条目删了又自动冒出来,这大概率是Windows的自动检测机制或者残留的EFI文件在搞鬼。我给你整理了几个针对性的解决步骤,按顺序来试试:
第一步:清理C盘根目录的残留EFI文件
从你的efibootmgr输出能看到,无效的Boot0002指向的是C盘(HD(2))里的\EFI\Microsoft\Boot\bootmgfw.efi,这应该是Windows某次更新或操作留下的残留文件,系统每次启动都会检测到它并自动添加启动项。
操作步骤:
- 打开Windows文件资源管理器,点击顶部「查看」选项卡,勾选「隐藏项目」和「受保护的操作系统文件」(弹出提示时点击“是”)。
- 导航到C盘根目录,找到
EFI文件夹,先把它备份到其他磁盘(比如D盘),然后删除整个文件夹。
第二步:用Windows的bcdedit工具删除无效固件条目
光删BIOS里的启动项没用,Windows系统层面的固件启动列表里也存着这个无效条目,得一起清理:
- 以管理员身份打开命令提示符(CMD)。
- 运行
bcdedit /enum firmware,找到那个描述为Windows Boot Manager且device是partition=C:的条目,记下它的identifier(比如你的是{db70feaf-6179-11ee-a5c8-806e6f6e6963})。 - 运行命令删除该条目:
注意把大括号里的内容替换成你实际查到的identifier。bcdedit /delete {db70feaf-6179-11ee-a5c8-806e6f6e6963}
第三步:关闭Windows快速启动(关键操作)
Windows的快速启动功能会保留系统部分状态,很可能导致启动项被自动恢复,建议先关闭它:
- 打开控制面板,进入「电源选项」→「选择电源按钮的功能」。
- 点击「更改当前不可用的设置」,取消勾选「启用快速启动(推荐)」,然后点击「保存修改」。
第四步:在Linux端清理并设置启动顺序
回到Arch Linux,完成最后一步的清理和启动顺序配置:
- 删除无效的BIOS启动项:
sudo efibootmgr -b 2 --delete-bootnum - 设置你偏好的启动顺序(比如把GRUB设为第一,有效Windows启动项设为第二),根据你的
efibootmgr输出,Boot0001是GRUB,Boot0000是有效Windows,所以运行:
顺序可以按你的使用习惯调整。sudo efibootmgr -o 0001,0000
额外排查(如果上述步骤无效)
要是无效条目还是会自动恢复,可能是Windows的自动修复功能在干预,可以临时关闭它:
- 在Windows管理员CMD中运行:
问题解决后记得再运行bcdedit /set {current} recoveryenabled nobcdedit /set {current} recoveryenabled yes打开自动修复,避免后续系统出问题无法自动恢复。
完成这些步骤后重启电脑,无效的启动项应该就不会再回来了。
备注:内容来源于stack exchange,提问作者Develobeer




