Windows 10 具有在重启后使用某种“启动覆盖”功能从 USB 闪存驱动器启动的功能,这可能会绕过 BIOS 中的常规启动顺序。
我可以在 Linux 中找到类似的东西吗?
答案1
是的,通过使用它efibootmgr
来更改 EFI 固件的“BootNext”参数。
例如,要启动 Windows 一次,请将“BootNext”设置为您想要的条目,然后重新启动:
# efibootmgr
BootCurrent: 0001
BootOrder: 0000,0001
Boot0000* Windows Boot Manager
Boot0001* Ubuntu
Boot001F USB HDD
# efibootmgr --bootnext 0000
# reboot
通常,固件只会将系统启动时存在的可移动设备添加到此列表中。即使在 Windows 中,稍后插入的 USB 记忆棒也不会显示在列表中(除非您先进行正常重启)。
您还可以使用 或类似方法永久地重新排列条目--bootorder 0001,0000
。
重新启动进入固件设置屏幕,使用了不同的方法('OsIndications' 参数 - 旧系统可能不支持此功能):
# systemctl reboot --firmware-setup
还可以通过 Windows 的 CLI 访问这些功能:
Linux | 视窗 |
---|---|
efibootmgr |
bcdedit /enum firmware |
efibootmgr --bootnext NUM |
bcdedit /set {fwbootmgr} bootsequence GUID |
efibootmgr --bootorder NUM… |
bcdedit /set {fwbootmgr} displayorder GUID… |
reboot ,systemctl reboot |
shutdown /r /t 0 |
systemctl reboot --firmware-setup |
shutdown /r /fw /t 0 |
(通常bcdedit
处理 Windows 启动管理器自己的菜单,但这些特定命令要求它管理 EFI 启动菜单。)