after upgrading to 19.04 the Grub menu have become hidden. It still works and I can boot to both Windows 10 and Ubuntu by blindly finding the entry and pressing enter. I have tried to edit the /etc/default/grub and running sudo update-grub afterward but no change. Here is how it looks now:

# 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_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`

# 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 ...)

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

# 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'

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

# Uncomment to disable generation of recovery mode menu entries

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

I can't use either Shift or Esc to make it visible too. After pressing either of these, Grub doesn't work anymore and I need to turn my laptop off and on in order to boot.

Edit: Not sure if it helps or not, but I just realized that if I go to the BIOS when I exit BIOS the grub menu shows up with no problem. The next time I boot, the grub menu is invisible again.

  • 1
    You should remove or comment out the line GRUB_HIDDEN_TIMEOUT_QUIET=false, it's deprecated. Then run sudo update -grub. I'm not sure if this solves your problem, but you should definitely try it.
    – mook765
    May 10 '19 at 16:49
  • Thanks for your response. I did it, but as you imagined yourself, it didn't solve the problem. This was actually one of the lines that I added by reading other posts here trying to solve the problem.
    – rezafa
    May 10 '19 at 20:50

I had exactly the same problem.

After trying several solutions, one did the trick (explaining with details in case someone else needs it):

  1. Edit /etc/default/grub by running in terminal while in the correct folder:

    sudo gedit grub
  2. Uncomment the line #GRUB_TERMINAL=console. The correct version shall be:

  3. Save the file.

  4. Run in terminal:

    sudo update-grub
  5. Restart. GRUB menu shall appear now.

Note: I don't know why but graphical terminal wouldn't work. The console is a bit uglier but I don't care.

  • 1
    Thanks! It solved the problem. I wonder what could be the problem, maybe the graphic card driver? Anyway, thanks!
    – rezafa
    Jun 27 '19 at 15:25

I also had this problem. Your description lead me to the final solution: GRUB-GFXMODE=auto was the problem.

I entered the GRUB console by pressing C (after I had uncommented the GRUB console output in /etc/default/grub so that the GRUB menu was visible again) and ran the command videoinfo which returned nothing.

Ok, with an automode that doesn't work, any output is difficult ;-) That´s the cause of the problem. The system doesn´t automatically detect the screen resolution. It´s necessary to manually enter a proper value.

I changed to GRUB-GFXMODE=1280x800, which is the known resolution of my laptop, your values may of course differ. Editing the grub file was possible in graphic mode with file manager opened in root-mode (you need root privileges to alter a system file), for the grub-update command I used of course a terminal, as described in Felipe's post.

And finally, I had my beautiful GRUB screen back :-)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.