如何仅在下次重新启动时更改 GRUB 超时?

帕特里克·图里

同样,当我更改grub-reboot 2仅影响下次启动的选定 GRUB 选项时,我只想更改下次启动的 GRUB 超时时间。之后,超时值应重置为以前的值。

我怎样才能做到这一点?我有 Ubuntu 18.04。

mook765

您可以使用 Grub 的Environment-block

我们可以/boot/grub/grubenv在下次启动时保存一个变量并修改该变量的值。

将以下行添加到/etc/grub.d/40_custom

if [ ${boot_once_timeout} != "x" ]; then
    set timeout=${boot_once_timeout}
    set boot_once_timeout=x
    save_env boot_once_timeout
fi

使文件可执行 sudo chmod +x /etc/grub.d/40_custom

运行sudo update-grub

现在将变量写入/boot/grub/grubenv并重新启动:

sudo grub-editenv - set boot_once_timeout=0
sudo grub-reboot 0

您可以随时检查变量的值

~$ cat /boot/grub/grubenv
# GRUB Environment Block
next_entry=
boot_once_timeout=x

请注意,这仅在 Grub 能够写入时才有效/boot/grub/grubenv,因此如果您的/boot文件夹位于 BTRFS 分区或 LVM 卷中,则此解决方案将不起作用。

请查看此答案,这是另一个解释 Grub 环境块使用的示例。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章