grub: Overview
1.1 Overview
============
Briefly, a "boot loader" is the first software program that runs when a
computer starts. It is responsible for loading and transferring control
to an operating system "kernel" software (such as Linux or GNU Mach).
The kernel, in turn, initializes the rest of the operating system (e.g.
a GNU system).
GNU GRUB is a very powerful boot loader, which can load a wide
variety of free operating systems, as well as proprietary operating
systems with chain-loading(1) (⇒Overview-Footnote-1). GRUB is
designed to address the complexity of booting a personal computer; both
the program and this manual are tightly bound to that computer platform,
although porting to other platforms may be addressed in the future.
One of the important features in GRUB is flexibility; GRUB
understands filesystems and kernel executable formats, so you can load
an arbitrary operating system the way you like, without recording the
physical position of your kernel on the disk. Thus you can load the
kernel just by specifying its file name and the drive and partition
where the kernel resides.
When booting with GRUB, you can use either a command-line interface
DONTPRINTYET (⇒Command-line interface), or a menu interface (*noteMenu
DONTPRINTYET (⇒Command-line interface), or a menu interface (⇒Menu
interface). Using the command-line interface, you type the drive
specification and file name of the kernel manually. In the menu
interface, you just select an OS using the arrow keys. The menu is
based on a configuration file which you prepare beforehand (⇒
Configuration). While in the menu, you can switch to the command-line
mode, and vice-versa. You can even edit menu entries before using them.
In the following chapters, you will learn how to specify a drive, a
partition, and a file name (⇒Naming convention) to GRUB, how to
install GRUB on your drive (⇒Installation), and how to boot your
OSes (⇒Booting), step by step.