I had a Grub menu, then I didn't. Now I go straight to login

In a desktop workstation, I have a 1-terabyte Western Digital SSD containing Ubuntu-MATE 18.04.4.

It boots in BIOS mode and uses MBR partitioning, and has one large 998 GB partition at /dev/sda1. Ext4 file system. I use a swap file, with no swap partition.

I also have in the box, for storage only, a non-booting 960 GB Sandisk SSD.

When I set 18.04 up a few months ago, it had a functioning, visible Grub menu.

But somewhere along the line in the last month or two, the Grub menu disappeared - it does not display when I boot up. Now I boot, then wait almost a full minute, then the login window appears.

(I set up this 18.04 after removing all three of (a) a separate SSD containing Ubuntu-MATE 16.04; (b) an old spinner HD that contained MATE 14.04; and (c) another spinner that was used for storage)

Installed on my system are:

grub-common 2.02-2ubuntu8.15, <--
grub2-common 2.02-2ubuntu8.15, <-- should I have both of these installed? Should I remove grub-common & keep grub2-common?
grub-pc 2.02-2ubuntu8.15,
grub-pc-bin 2.02-2ubuntu8.15, and
grub-gfxpayload-lists 0.7.

I'm trying to get ready to:

(a) remove the SSD with the old BIOS 18.04 install; then
(b) install, on separate SSD drives, Ubuntu-MATE 20.04 and 18.04 in UEFI mode with GPT partitioning; but I want to solve this current grub issue first. Thanks for any tips.

Some info:
--> uname -a
Linux rjbox 5.4.0-42-generic #46~18.04.1-Ubuntu SMP Fri Jul 10 07:21:24 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

--> lsb_release -a
In a desktop workstation, I have a 1-terabyte Western Digital SSD containing Ubuntu-MATE 18.04.4.

It boots in BIOS mode and uses MBR partitioning, and has one large 998 GB partition at /dev/sda1, ext4 file system. I use a swap file, with no swap partition.

I also have a 960 GB Sandisk SSD in the box that doesn't boot, it's just for storage.

When I set 18.04 up a few months ago, it had a functioning, visible Grub menu. But somewhere along the line in the last month or two, the Grub menu disappeared - it does not display when I boot up. Now I boot, then wait almost a full minute, then the login window appears.

(I set up this 18.04 after removing all three of (a) a separate SSD containing Ubuntu-MATE 16.04; (b) an old spinner HD that contained MATE 14.04; and (c) another spinner that was used for storage)

Installed on my system are:

grub-common 2.02-2ubuntu8.15, <--
grub2-common 2.02-2ubuntu8.15, <-- should I have both of these installed? Should I remove grub-common & keep grub2-common?
grub-pc 2.02-2ubuntu8.15,
grub-pc-bin 2.02-2ubuntu8.15, and
grub-gfxpayload-lists 0.7.

I'm trying to get ready to:

(a) remove the SSD with the old BIOS 18.04 install; then
(b) install, on separate SSD drives, Ubuntu-MATE 20.04 and 18.04 in UEFI mode with GPT partitioning;
but I want to solve this current grub issue first. Thanks for any tips.

Some info:
--> uname -a
Linux rjbox 5.4.0-42-generic #46~18.04.1-Ubuntu SMP Fri Jul 10 07:21:24 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

--> lsb_release -a
LSB Version:    core-9.20170808ubuntu1-noarch:security-9.20170808ubuntu1-noarch
Distributor ID:    Ubuntu
Description:    Ubuntu 18.04.4 LTS
Release:    18.04
Codename:    bionic


--> ls -la /  
total 2097268
      4 drwxr-xr-x  25 root root       4096 Jul 22 00:59 ./
      4 drwxr-xr-x  25 root root       4096 Jul 22 00:59 ../
      4 drwxr-xr-x   2 root root       4096 May 25 13:05 bin/
      4 drwxr-xr-x   3 root root       4096 Jul 22 01:10 boot/
      4 drwxr-xr-x   2 root root       4096 Mar 27 21:39 cdrom/
      0 drwxr-xr-x  21 root root       4880 Jul 25 20:30 dev/
     12 drwxr-xr-x 178 root root      12288 Jul 24 22:28 etc/
      4 drwxr-xr-x   3 root root       4096 Mar 27 21:40 home/
      0 lrwxrwxrwx   1 root root         32 Jul 22 00:59 initrd.img -> boot/initrd.img-5.4.0-42-generic
      0 lrwxrwxrwx   1 root root         32 Jul 22 00:59 initrd.img.old -> boot/initrd.img-5.3.0-62-generic
      4 drwxr-xr-x  23 root root       4096 Jul  6 15:30 lib/
      4 drwxr-xr-x   2 root root       4096 Jul  6 15:30 lib64/
     16 drwx------   2 root root      16384 Mar 27 21:33 lost+found/
      4 drwxr-xr-x   3 root root       4096 Apr  5 21:05 media/
      4 drwxr-xr-x   3 root root       4096 May 18 00:19 mnt/
      4 drwxr-xr-x   9 root root       4096 May 10 22:31 opt/
      0 dr-xr-xr-x 265 root root          0 Jul 25 11:38 proc/
      4 drwx------  13 root root       4096 Jun  4 22:25 root/
      0 drwxr-xr-x  37 root root       1200 Jul 25 20:30 run/
     12 drwxr-xr-x   2 root root      12288 Jul  6 15:30 sbin/
      4 drwxr-xr-x  14 root root       4096 May 21 02:03 snap/
      4 drwxr-xr-x   2 root root       4096 Feb  3 13:22 srv/
2097156 -rw-------   1 root root 2147483648 Mar 27 21:35 swapfile
      0 dr-xr-xr-x  13 root root          0 Jul 25 11:38 sys/
      4 drwxr-xr-x   9 root root       4096 Jul 21 16:01 timeshift/
      4 drwxrwxrwt  21 root root       4096 Jul 25 20:48 tmp/
      4 drwxr-xr-x  10 root root       4096 Feb  3 13:22 usr/
      4 drwxr-xr-x  14 root root       4096 Feb  3 13:36 var/
      0 lrwxrwxrwx   1 root root         29 Jul 22 00:59 vmlinuz -> boot/vmlinuz-5.4.0-42-generic
      0 lrwxrwxrwx   1 root root         29 Jul 22 00:59 vmlinuz.old -> boot/vmlinuz-5.3.0-62-generic


--> ls -la /boot
total 173888
    4 drwxr-xr-x  3 root root     4096 Jul 22 01:10 ./
    4 drwxr-xr-x 25 root root     4096 Jul 22 00:59 ../
 4388 -rw-------  1 root root  4490843 Jun 24 08:07 System.map-5.3.0-62-generic
 4468 -rw-------  1 root root  4573787 Jul 10 02:54 System.map-5.4.0-42-generic
  232 -rw-r--r--  1 root root   235827 Jun 24 08:07 config-5.3.0-62-generic
  236 -rw-r--r--  1 root root   237786 Jul 10 02:54 config-5.4.0-42-generic
    4 drwxr-xr-x  5 root root     4096 Jul 22 01:08 grub/
73080 -rw-r--r--  1 root root 74833744 Jul  8 16:11 initrd.img-5.3.0-62-generic
72820 -rw-r--r--  1 root root 74561600 Jul 22 00:59 initrd.img-5.4.0-42-generic
  180 -rw-r--r--  1 root root   182704 Jan 28  2016 memtest86+.bin
  184 -rw-r--r--  1 root root   184380 Jan 28  2016 memtest86+.elf
  184 -rw-r--r--  1 root root   184840 Jan 28  2016 memtest86+_multiboot.bin
 8948 -rw-------  1 root root  9158912 Jun 24 08:20 vmlinuz-5.3.0-62-generic
 9156 -rw-------  1 root root  9371904 Jul 10 02:56 vmlinuz-5.4.0-42-generic


--> ls -la /boot/grub
total 2392
   4 drwxr-xr-x 5 root root    4096 Jul 22 01:08 ./
   4 drwxr-xr-x 3 root root    4096 Jul 22 01:10 ../
   4 drwxr-xr-x 2 root root    4096 Mar 27 21:41 fonts/
   4 -rw------- 1 root root     712 May 15 21:52 gfxblacklist.txt
  12 -r--r--r-- 1 root root    9605 Jul 22 01:08 grub.cfg
   4 -rw-r--r-- 1 root root    1024 Jul 25 11:38 grubenv
  12 drwxr-xr-x 2 root root   12288 Mar 27 21:45 i386-pc/
   4 drwxr-xr-x 2 root root    4096 Mar 27 21:45 locale/
2344 -rw-r--r-- 1 root root 2397557 Mar 27 21:45 unicode.pf2


--> cat /etc/default/grub
#   If you change this file, run 'update-grub' afterwards to update /boot/grub/grub.cfg.
#   For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX="video=VGA-1:640x480"

# GRUB_GFXMODE=1024x640
# GRUB_GFXPAYLOAD=1024x640
# GRUB_GFXPAYLOAD_LINUX=keep


# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
# GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
# GRUB_TERMINAL=console

# The resolution used on graphical terminal:
# Note that you can use only modes which your graphic card supports via VBE.
# You can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE=640x480


# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
# GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
# GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
# GRUB_INIT_TUNE="480 440 1"

While I don't know how to solve your problem, I think installing grub customizer might help you to solve it.
Under list configuration you can see and edit the grub menu entries (menuentry/script:linux).
Under general settings you can set the length of time the grub menu shows.

2 Likes

In your /etc/default/grub file you need GRUB_TIMEOUT_STYLE=menu. Not hidden. Need to edit the file as root, then run sudo update-grub afterward.

3 Likes