0

I have removed Windows partitions in order to completely remove Windows 10 and continue with Ubuntu. However, even after updating grub using sudo update-grub it still shows the Windows boot loader. Its output was this:

1

I also want to remove the grub menu which shows before booting so that it takes less time to boot up. I tried it with grub customizer. After booting up it takes even more time. I want to know how can I change grub settings so that it takes least amount of time to boot?

Some information about my system is:

  • Ubuntu 18.04
  • i3-5005u
  • 4gb ram
1

You can use efibootmgr to make grub the default boot target to avoid seeing the Windows boot manager. E.g.,

$ sudo efibootmgr

BootCurrent: 0000
Timeout: 10 seconds
BootOrder: 0004,0000,2001,2002,2003
Boot0000* ubuntu
Boot0003* Windows Boot Manager
Boot0004* Windows Boot Manager
Boot2001* EFI USB Device
Boot2002* EFI DVD/CDROM
Boot2003* EFI Network

To make Ubuntu the default, modify the order of the list.

$ sudo efibootmgr -o 0,4,2001,2002,2003

BootCurrent: 0000
Timeout: 10 seconds
BootOrder: 0000,0004,2001,2002,2003
Boot0000* ubuntu
Boot0003* Windows Boot Manager
Boot0004* Windows Boot Manager
Boot2001* EFI USB Device
Boot2002* EFI DVD/CDROM
Boot2003* EFI Network

Now to reduce the boot timeout in grub, modify the /etc/default/grub and set GRUB_TIMEOUT to a smaller value.

sudo nano /etc/default/grub

Modify GRUB_TIMEOUT=1

sudo update-grub

Update: Note that for the boot manager order list, make sure you modify the list you have and not use my example directly. You can also reduce normal efi bootmanager timeout by changing it, e.g.,

sudo efibootmgr -t 1
0
0

Using this answer as a guideline:

You can change the file sudo -H gedit /etc/grub.d/25_custom:

───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~/askubuntu$ cat /etc/grub.d/25_custom
#!/bin/sh
exec tail -n +3 $0

───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~/askubuntu$ 

The extra screen lines were included so you can see there must be a third empty line at the bottom of the file.

Grub defaults to a 10 second count down but you can shorten it to about 2 or 3 seconds which gives you enough time to interrupt it. In this example the 10 second countdown has been changed to 5 seconds:

grub boot.gif

To change the count down time use sudo -H gedit /etc/default/grub and find this line:

GRUB_TIMEOUT=10

Change it to a more reasonable time for you:

GRUB_TIMEOUT=3

Changing it to 0 doesn't work because grub code automatically changes 0 to 10 seconds. For more details see:

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.