I have grub working the way I want it on my ubuntu 18.04. I coppied over /etc/default/grub to my new ubuntu 20.04 box.
Here is the config:
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=countdown
GRUB_TIMEOUT=3
GRUB_RECORDFAIL_TIMEOUT=$GRUB_TIMEOUT
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
GRUB_BACKGROUND="/home/me/Pictures/grub.png"
GRUB_GFXMODE=1024x768
I then performed sudo update-grub
. This updated the /boot/grub/grub.cfg file. I confirmed timeout settings were set properly in the fil with cat /boot/grub/grub.cfg | grep -i time
.
I perform a reboot, and the grub menu appears, my image appears, and the countdown starts. 3. 2. 1. Then nothing.... for ~20 seconds. Then grub timesout, and Ubuntu loads.
No matter what I try grub refuses to actually timeout with the value I set. Its stuck on ~20 seconds.
Yes, I read everything here, none of it worked. You can see I tried the GRUB_RECORDFAIL_TIMEOUT=$GRUB_TIMEOUT
even GRUB_RECORDFAIL_TIMEOUT=3
, nothing works. Even redeployed Ubuntu, same thing.
I noticed this setting appears to change /etc/grub.d/00_header with a conditional for if if [\$grub_platform = efi ];then
. I am running bios off vmware workstation not uefi. Is this even being honored?
How can I get grub to actually timeout at 3 seconds?
if [\$grub_platform = bios ];then
below the line if[\$grub_platform = efi ];then
(as root) in your grub.cfg and save it. Does it work then ( if not delte the line again ).elif
statement after the if, with the same settings. Performedupdate-grub
, still need to wait ~20 seconds.GRUB_HIDDEN_TIMEOUT_QUIET=false
in /etc/default/grub, and changequick_boot="1"
toquick_boot="0"
in /etc/grub.d/30_os-prober.sudo update-grub
andreboot
. Report back.