这是我的 GRUB 配置:
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
我的设备是联想 ThinkPad X1 Yoga(第 4 代),配备 1TB NVME SSD,当前运行 Kubuntu 21.10。
我该如何阻止它出现并中断启动过程?
答案1
我遇到了完全相同的问题(在 Ubuntu 21.10 上)并且能够修复它。
如果 grub 在驱动器上找到另一个操作系统(对我来说确实如此,因为我双启动了 Ubuntu 和 Windows,但不需要 grub),它会自动将超时重置为 10(如果设置为 0)。打开时,您可以/boot/grub/grub.cfg
在文件末尾附近找到以下 if 语句:
if [ "${timeout}" = 0 ]; then
set timeout=10
fi
正如/boot/grub/grub.cfg
其本身所述,它是自动生成的,因此如果您直接编辑该文件,则在将来更新 grub 时对它的任何更改都将丢失。
为了持续修复此问题,请打开/etc/grub.d/30_os-prober
,因为这是 if 语句的来源文件。您可以注释掉整个 if 语句,也可以将其编辑为set timeout=0
。
即使您没有双启动,也要仔细检查/boot/grub/grub.cfg
以查找任何超时重置。如果有,它还应该显示哪个文件正在插入它。相应地编辑该文件。
保存文件update-grub
并运行,下次启动时,grub 将不再出现。