几十年前我就知道这个问题:假设您想在 HDD2 或 HDD3 上重新启动计算机,以启动另一个操作系统比主操作系统更慢。你必须:
开始菜单>重新启动计算机
等待几秒钟关机 + 初始 BIOS 启动等(也许 20 秒?)
根据您的计算机,按F1、F12、ThinkVantage(对于 ThinkPad),DEL 在正确的时间重启后触发“选择要启动的备用设备”
等待几秒钟
有时你必须按下另一个按钮(例如F12在我的 Thinkpad 上),然后再次等待
在菜单上选择设备
ETC。
有时您会错过准确的时间,而必须重新开始!
问题:有没有办法这样做,例如通过脚本:
在列表中选择要重新启动的设备/分区,例如
"HDD2 / Partition 1 / Linux"
或"HDD1 / Partition 2 / Windows 10"
或"USB external (64 GB)"
那么当您单击“Go”时,您不需要照看重新启动,也不需要浪费一分钟的时间在正确的时间按下按键并等待!
?
在我的设置中:
HDD1 Windows 7
HDD2 Windows 10
HDD2 另一个分区 Debian Linux
答案1
如果当前操作系统和目标操作系统都使用 UEFI 启动,则使用 EFIBootNext
变量是可能的。
在 Windows 10 上:
开始菜单 → 设置 → 更新和安全 → 恢复 → 高级启动 - 立即重启 → 使用设备 → (选择要启动的操作系统)。
或者,开始菜单 → 电源 →Shift重启 → 使用设备 → (选择要启动的操作系统)
在 Windows 上,使用 CLI:
bcdedit /enum firmware
列出操作系统条目bcdedit /set {fwbootmgr} bootsequence <GUID>
通过 GUID 选择下一个操作系统
在 Linux 上:
efibootmgr
列出操作系统条目sudo efibootmgr -n <number>
按数字选择下一个操作系统
答案2
根据@gronostaj 的回答中的想法,我刚刚为此创建了一个小工具:
马上重启!
它通过写入 UEFIBootNext
变量来工作,并触发重新启动。
因此,您可以直接从 Windows 轻松重新启动到 HDD2、USB 闪存驱动器,甚至 BIOS 设置。