我不确定我是否真的会这样做,但是有没有办法让 GRUB 自动选择我上次启动时未使用的启动选项?
即,如果我上次启动时启动到 Windows,它会选择 Ubuntu。如果我启动到 Ubuntu,它会选择 Windows。
我只是想知道,因为我经常发现自己重新启动以切换操作系统,因为我在每个操作系统上运行不同的游戏(虽然我的新装备不需要在 Ubuntu 上运行东西,只是为了降低操作系统资源使用率),我想知道我是否可以这样做,这样每次我从任一操作系统按下“重新启动”时,我都不必更改选择。
实际上,这也会影响非重启启动,所以我可能必须启动两次才能获得我上次使用的操作系统。
答案1
- 启动 Ubuntu。
- 在那里修改
/etc/default/grub
并设置GRUB_DEFAULT=saved
。 - 在同一个文件中设置
GRUB_TIMEOUT
为非负整数。您甚至可能想要GRUB_TIMEOUT=0
(意思是“立即启动而不显示菜单”)。 - 使用
grub-set-default
将您的默认条目设置为 Ubuntu。 更新您的 GRUB 配置(
update-grub
)。仅在下次启动时将
grub-reboot
GRUB 指向 Windows。代码来自这个答案可能是你的起点:grub-reboot "$(grep -i 'windows' /boot/grub/grub.cfg|cut -d"'" -f2)"
验证它是否有效,只需重新启动即可。正确完成后,返回 Ubuntu 并让命令
grub-reboot
在 Ubuntu 启动时自动运行(例如将其放入/etc/rc.local
)。
现在您的机器将默认启动 Ubuntu。启动时,GRUB 会被告知在下次启动时启动 Windows。因此您的第二次启动将运行 Windows。第三次启动应与第一次启动完全相同 —— 依此类推。
答案2
我们只能设置默认启动操作系统,然后系统每次都选择一个默认启动操作系统自动运行。
但是如果我们的电脑上安装了多个操作系统,系统不知道我们要启动哪个操作系统,那么默认的操作系统会给我们 30 秒的时间去选择运行哪个操作系统,然后默认的操作系统才会自动运行。具体可以参考: