In this tutorial, we’ll learn how to install and use a few popular Linux bootloaders.
rEFInd is a boot manager for UEFI-based machines. It’s highly customizable and has a wide variety of themes that are easy to install. rEFind supports x86, x86-64, and ARM64 architecture. However, it does not support older BIOS-based computers, which is not a problem if we have a relatively new machine.
2.1. Installing rEFInd
To install rEFInd, we should run these commands:
$ sudo apt-add-repository ppa:rodsmith/refind $ sudo apt-get update $ sudo apt-get install refind
After that, we should run the rEFInd installation script:
$ sudo refind-install ShimSource is none Installing rEFInd on Linux.... ESP was found at /boot/efi using vfat Installing driver for ext4 (ext4_x64.efi) Copied rEFInd binary files Copying sample configuration file as refind.conf; edit this file to configure rEFInd. Keeping existing NVRAM entry rEFInd is set as the default boot manager. Existing //boot/refind_linux.conf found; not overwriting. Installation has completed successfully.
The script has successfully installed the program. We can usually find its files at /boot/efi/EFI/refind.
2.2. Booting Into Refind
After we restart the machine, we can see the rEFInd boot manager:
We can also hide the options we don’t use by pressing the del button. And, we can apply custom themes to make it look better:
We’ve finished setting up rEFInd.
GRUB is the default bootloader for many Linux distributions like Fedora and Ubuntu. It’s one of the most popular bootloaders and supports UEFI and BIOS. In addition, it can boot Linux, Windows, and macOS operating systems. Moreover, it supports IA-32, x86-64, IA-64, ARM, PowerPC, s390x, MIPS, RISC-V and SPARC architecture.
3.1. Installing GRUB
Many Linux distributions automatically install GRUB during the installation process. But, we can also manually install it.
First, we should find the disk’s name by running fdisk:
$ sudo fdisk -l ... Disk /dev/nvme0n1: 476.96 GiB, 512110190592 bytes, 1000215216 sectors ...
Now that we’ve found the disk name, we should run grub-install:
$ sudo grub-install /dev/nvme0n1 Installing for x86_64-efi platform. Installation finished. No error reported.
We’ve successfully installed GRUB on our machine.
BURG is a bootloader derived from GRUB and uses a new object format that allows it to support Windows, Linux, macOS, Solaris, FreeBSD, etc. It’s very customizable and offers both graphical and text interfaces. However, the project is no longer maintained and won’t have any more updates.
LILO (Linux Loader) is another Linux bootloader and was the default bootloader for many Linux distributions for years. It supports many filesystems, including NTFS, FAT32, ext2, ext3, and ext4. LILO was discontinued in December 2015 and is considered a legacy bootloader. However, it’s useful for older machines.
In this article, we learned about a few popular Linux bootloaders and how to install and use them.