By: Chad Files
When you power on your computer, the first software that runs is a bootloader that invokes the computer’s operating system. GRUB, the GRand Unified Bootloader, is an integral part of many Linux systems. It starts the Linux kernel. Here’s some background on GRUB, and some tips on installing and configuring the software.
GRUB was originally written by Erich Stefan Boleyn and is now part of the GNU project. The current production version is GRUB 0.9x, also known as GRUB Legacy. In 2002 the developers shifted their focus to GRUB 2 and stopped adding features to the legacy code, though it still receives regular patches and bug fixes. GRUB 2 remains a development version; most distributions still rely on GRUB Legacy.
GRUB is not dependent upon any operating system. It was written to conform with the Free Software Foundation’s Multiboot Specification, which allows it to boot almost any operating system. In fact, it can boot multiple operating systems on computers that have more than one installed on their hard drives. Among GRUB’s features:
* Dynamic configuration. Users can change settings and parameters at boot time.
* Support for multiple executable formats and hard drive filesystems.
* Both a graphical and command-line interface to let users choose what operating system to boot.
One common task performed by GRUB in the Linux world — besides booting the kernel — is to allow users to dual boot Linux and Microsoft Windows. The typical pattern for creating a dual boot system is to install Windows, if it is not already installed, then install Linux on another hard drive or on an empty partition. Most Linux distributions will detect the Windows installation and automatically install and configure an open source boot loader — such as GRUB or LILO — to boot both Linux and Windows, replacing the Windows bootloader.