Sign up ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free.

The hidden menu option isn't working. I want the menu to remain hidden during boot but show up when I press a button.

I have /etc/default/grub configured as follows:

GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`

With the settings:


The menu doesn't appear if I press nothing, and I can tell the computer is waiting 10 seconds to boot. The problem is no matter what I press (Esc, Tab, Shift, Enter) and no matter when I press it or if/when I hold it, I can't get the menu to come up. The only thing that appears is the text: Grub Loading...

Any suggestions would be greatly appreciated!

share|improve this question

closed as off-topic by Braiam, Eric Carvalho, qbi, psusi, Seth Nov 4 '13 at 4:23

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Bug reports and problems specific to development version of Ubuntu should be reported on Launchpad so that developers can see, track and fix these issues." – Braiam, Eric Carvalho, qbi, psusi, Seth
If this question can be reworded to fit the rules in the help center, please edit the question.

apparent bug in the GRUB scripts – Braiam Oct 31 '13 at 1:58

2 Answers 2

This solution by Bolodya @ worked for me:

I had the same problem - cant access to grub menu by esc or shift keys during boot if I tried to hide it (I have windows and ubuntu on one disk).

The reason is one strange condition in /etc/grub.d/30_os-prober script. it bloks hidden menu part of grub.cfg if os-probber found any other os.

So for me works the following:

  1. In the file /etc/grub.d/30_os-prober

    • comment line 33: if [ "x${found_other_os}" = "x" ] ; then
    • and comment closing it "fi" at line 67
  2. Sudo update-grub

After that if you have GRUB_HIDDEN_TIMEOUT >=1 then you can access to grub menu by esc key during this timeout, if you have GRUB_HIDDEN_TIMEOUT =0 then you can access to grub menu if you press "shift" during grub startup, and no hidden menu if GRUB_HIDDEN_TIMEOUT =-1.

For me the lines were 32 and 66 respectively

share|improve this answer

The line that says
I think you also need to change GRUB_TIMEOUT=0 instead of 5 and GRUB_HIDDEN_TIMEOUT=10 to make the menu not show up unless the Shift key is held during boot.

You may want to set a time smaller than 10 seconds (3-5 works for me) or you'll be waiting a while before GRUB boots the kernel.

Let me know if this is still not working for you!


share|improve this answer
I think that the OP want to hide the post. – Lucio Mar 17 '13 at 4:56
@Lucio thank-you, I edited my answer – Mark Paskal Mar 17 '13 at 14:29
I should have clarified my question. With this configuration: GRUB_TIMEOUT=0 and GRUB_HIDDEN_TIMEOUT=0 I can't access the menu at all. I also tried to set GRUB_HIDDEN_TIMEOUT=10 and other combinations but I can't get the menu to hide at first, but appear if I press esc, shift, tab, enter, etc. My goal is to make the menu hidden by default, but if I press a button, the menu to appear. Thanks again. – Eric Mar 17 '13 at 23:41
@Eric GRUB_HIDDEN_TIMEOUT=10 should do the trick, then. I'm pretty sure you need to hold down the shift key during boot (after the BIOS / logo screen) and then the menu should show up. – Mark Paskal Mar 18 '13 at 22:09
@MarkPaskal I couldn't get shift or any other key to bring up the menu. is it possible my laptop won't recognize it's pressed? – Eric Mar 19 '13 at 13:45

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