11

I installed Ubuntu in an empty disk in an UEFI machine, and has been booting directly without any kind of menu or timeout until last week's software update. I would like to keep booting simple, like it was before.

The relevant change I did was moving a disk with an old Linux Deepin installation from a PC that I sold to the same machine with Ubuntu. So now I have 2 disks on the same PC.

And of course at boot I now have a grub menu to select between Ubuntu and Deepin. I don't need this menu since I always use Ubuntu, the Deepin disk has its own grub and I can choose which disk to boot from the BIOS options.

How do I go back to the old boot sequence? I really don't want to disconnect my Deepin disk.

After reading this question I changed some stuff in the /etc/default/grub file, now it looks like this:

# 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_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX="noprompt"

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

Then ran sudo update-grub with no problems. But the grub menu and 10 seconds timeout is still present at boot.

It may be relevant to post the partitioning on the Ubuntu disk, since is not the default:

Partition - Mount point - Flags

/dev/sda1 - - bios_grub

/dev/sda2 - /boot/efi - boot,esp

/dev/sda3 - / -

/dev/sda4 - /home -

/dev/sda5 - swap -

2
  • 1
    Have you tried turning off os-prober? If other install not found menu only has grub and should directly boot. Add this to /etc/default/grub: GRUB_DISABLE_OS_PROBER=true or turn off execute bit on os-prober. Then run the update grub again.
    – oldfred
    Dec 1, 2015 at 16:17
  • Thank you @Oldfred that did the trick! Feel free to ad it as an answer so we can up vote. =D
    – eridani
    Dec 1, 2015 at 16:58

2 Answers 2

10

If for any reason you just want Ubuntu, you can turn off os-prober. And if desired add your own entries to 40_custom, but then grub would appear again.

If other install not found menu only has grub and should directly boot.

Add this to /etc/default/grub:

GRUB_DISABLE_OS_PROBER=true

or turn off execute bit on os-prober:

sudo chmod a-x /etc/grub.d/30_os-prober

Then run the update grub again sudo update-grub

3

Normally if you had only one OS running the option GRUB_TIMEOUT=0 would work. If GRUB 2's os-prober identifies additional operating systems while running the /etc/grub.d/30_os-prober script the hidden menu timeout feature is disabled by conditional statements. This also disables the ability to use the Shift key to display the menu during boot.

5
  • Yes it is detecting Deepin in /dev/sdc2. Am I screwed unless I disconnect the 2nd disk? DX
    – eridani
    Dec 1, 2015 at 16:48
  • 1
    Have you tried to set GRUB_HIDDEN_TIMEOUT_QUIET=false?
    – Tung Tran
    Dec 1, 2015 at 16:56
  • Hey @tungtns. Yes, no luck with that sadly. =/
    – eridani
    Dec 1, 2015 at 16:57
  • I've realized that your / is the 3rd boot entry. So try to change GRUB_DEFAULT=2.
    – Tung Tran
    Dec 1, 2015 at 17:19
  • Solved it by adding to /etc/default/grub: GRUB_DISABLE_OS_PROBER=true. Thank you very much for the help! =)
    – eridani
    Dec 1, 2015 at 17:23

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .