Customize Grub to Get a Better Experience With Linux

Couple of Grub configuration tweaks to get better experience with multi-boot Linux system using Grub Customizer GUI tool.
Warp Terminal

You know what Grub bootloader is, right? You see the Grub screen when you start your Linux powered system. It generally shows the installed operating systems on your computer along with the option to access the UEFI settings and recovery menu.

Grub Screen Linux
Graphical illustration of Grub screen

Not many people know that several aspects of Grub can be customized. You can change the Grub boot order, change the time-out, hide selected operating systems, hide Grub screen entirely, change the background screen, theme and more.

All of this could be done by changing the Grub configuration files located at /etc/default/grub and /boot/grub2 in the command line. But that would be complicated for many Linux users.

Instead, you can use a GUI tool like Grub Customizer and easily change the Grub configuration.

Install Grub Customizer on Linux

These days, Grub Customizer is available in the official repositories of many mainstream Linux distributions. This means that you can easily install it from the software center:

Grub customizer in Ubuntu software center
Grub Customizer in Ubuntu Software Center

Alternatively, you can use your distribution’s package manager for installing it.

You can use the apt command to install Grub Customizer on Ubuntu and Debian-based distributions:

sudo apt install grub-customizer

On Fedora, use the DNF command:

sudo dnf install grub-customizer

On Arch and Manjaro, use the pacman command:

sudo pacman -S grub-customizer

Installation instructions for Ubuntu 18.04

For Ubuntu 18.04 and Linux Mint 19 series, you’ll have to use PPA. Open a terminal and use the following commands one by one:

sudo add-apt-repository ppa:danielrichter2007/grub-customizer 
sudo apt update
sudo apt install grub-customizer

Customizing Grub with Grub Customizer GUI tool

Once you have installed Grub Customizer, search for it in the menu and open it.

Grub customizer Ubuntu
Start for Grub Customizer in application menu

It requires the admin password because you are dealing with an important configuration that requires root privileges. Enter your password.

Now let’s see what you can do with Grub Customizer.

Change boot order

The most common use of Grub Customizer is to change the boot order. If you have Linux and Windows in dual boot or if you have multiple Linux distributions installed, you may want to change the default OS.

All you have to do is to select the boot entry and move it up the order, and then click the save button. In the screenshot below, you can see Windows being made the default OS to boot into.

change grub boot order

Fix multiple reboot issue after kernel update

This trick was shared and written by It’s FOSS reader Dave Merritt.

Multi-boot machines with windows often won’t install updates properly unless it re-boots directly into that system. On my laptop, this meant that I’d have to boot and re-boot several times before everything was back to normal. I’ve also encountered the same on my Linux desktop. When the machine boots into the wrong OS upon restart, sometimes the latest Linux kernel doesn’t install properly.

The solution Grub Customizer has for this glitch is a thing of beauty. Under the “general settings” tab and default entry option, simply toggle “predefined” to “previously booted entry“.

grub customization gui
Customize Grub to always boot into previously booted entry

This way, the machine always boots the last OS you used, regardless of Grub’s boot order. So after a kernel update, when you click restart, your machine will always restart in the right OS and your boot file will never get corrupted.

Change Grub background image

Normally, the Grub screen is black or purple. If you find that boring, you can change it with a different wallpaper or image. Yes, that’s totally possible.

In Grub Customizer, go to the Appearance Settings tab. In the left sidebar, you’ll find the “background image” option.

change background image grub customizer
Changing Grub background image with Grub Customizer

Click on it to browse to an image of your choice. Do note that it starts browsing from the root folder, so you may have to select the mounted filesystem and then go to home directory:

selecting background picture for grub theme
Click on the Filesystems in the left sidebar and then go to home directory and from there to the location of the image
🚧
Before you make any further changes here, I suggest you take a screenshot of the text color. If you change it, there is no way of knowing the original text color anymore. There is also an option to change the font but Grub Customizer itself warns against it. For this reason, I would recommend not changing the font at all.

You may need to change the text and its background color because it might be difficult to read the Grub menu entries on the changed background image.

The option to change the text and background for all entries and highlighted entries can be found in the same sidebar.

set grub background image using grub customizer
Setting grub background image in Grub Customizer

The good thing is that you can preview the changes while selecting the text colors. When you are satisfied with the changes, click save and restart. Grub load screen will have your chosen background now.

custom grub background
Here’s the changed Grub background for my system

Removing the Grub background image

Don’t like the background image you customized previously and want the good old normal Grub screen back? You may find it difficult to remove the background image because that option is hidden.

In Appearance Settings, click on the “advanced settings” option in the bottom right corner. Here, uncheck the GRUB_MENU_PICTURE option. Save your changes.

remove grub background image in Grub Customizer
Removing grub background image in Grub Customizer

Change Grub theme and give it an astonishing look

🚧
Grub is picky about image type, font size, resolution etc. Changing the Grub theme and related configuration too much may leave you with a messed up boot system. This is why you must have proper backup of your system settings with Timeshift and you should also keep a live USB of your distribution or Grub rescue disc ready with you.

In the Appearance Settings tab of Grub Customizer, you’ll see a Theme option. You can browse to Grub themes and activate them here.

changing grub theme in grub customizer
Changing Grub theme in Grub Customizer

But the question is where do you get these Grub themes. Thankfully, Pling has an entire section of Grub themes.

grub theme gnome look
Grub theme page on GNOME Looks website

A few tips on choosing the Grub themes:

  • Make sure that the Grub theme was updated recently. The information is available on the theme page.
  • Grub Customizer only accepts themes in .tar.gz format. Do check if the theme is provided in this specific format or not.
  • Pay attention to the rating of theme. Poorly rated theme could mean many users encountered issues with it.
  • Read the description of the theme for additional information and instructions.
  • Try and read the recent comments to see if someone encountered bugs and issues.

The Grub themes should be downloaded in .tar.gz archive format. No need to extract it.

Some themes are created for specific distros. Some themes won’t work on your distribution, despite no error or warning. So be prepared for not to see the changed theme even when there was no error message displayed.

When you browse to the downloaded Grub theme, you’ll all its content extracted in the Grub Customizer window. If you have some knowledge of Grub configuration, you can modify the files to further customize it. Normally, you don’t need to do such a thing.

change grub theme

On the next boot, if you are lucky, you shall see a shiny new Grub screen.

The option to delete the theme is present at the same spot where you added the theme. So, if you want to remove the theme, you can simply hit the delete theme button.

Do you customize Grub?

Personally, I do not. I never felt the need to customize the looks of the Grub screen. However, if I have a dual-booted system, I change the default timeout from 10 seconds to 2 or 3 seconds. It speeds up things when I am not at my keyboard after powering the computer.

How about you? What kind of Grub customization do you prefer (if any)?

About the author
Abhishek Prakash

Abhishek Prakash

Created It's FOSS 11 years ago to share my Linux adventures. Have a Master's degree in Engineering and years of IT industry experience. Huge fan of Agatha Christie detective mysteries 🕵️‍♂️

Become a Better Linux User

With the FOSS Weekly Newsletter, you learn useful Linux tips, discover applications, explore new distros and stay updated with the latest from Linux world

itsfoss happy penguin

Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to It's FOSS.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.