GRUB, the open source boot loader, has been adopted as the default boot loader in the Solaris OS.
GRUB based booting is not available on SPARC based systems.
The boot loader is the first software program that runs after you power on a system. After you power on an x86 based system, the Basic Input/Output System (BIOS) initializes the CPU, the memory, and the platform hardware. When the initialization phase has completed, the BIOS loads the boot loader from the configured boot device, and then transfers control of the system to the boot loader.
GRUB is an open source boot loader with a simple menu interface that includes boot options that are predefined in a configuration file. GRUB also has a command-line interface that is accessible from the menu interface for performing various boot commands. In the Solaris OS, the GRUB implementation is compliant with the Multiboot Specification. The specification is described in detail at http://www.gnu.org/software/grub/grub.html.
Because the Solaris kernel is fully compliant with the Multiboot Specification, you can boot a Solaris x86 based system by using GRUB. With GRUB, you can more easily boot and install various operating systems. For example, on one system, you could individually boot the following operating systems:
Solaris OS
Microsoft Windows
GRUB detects Microsoft Windows partitions but does not verify that the OS can be booted.
A key benefit of GRUB is that it is intuitive about file systems and kernel executable formats, which enables you to load an operating system without recording the physical position of the kernel on the disk. With GRUB based booting, the kernel is loaded by specifying its file name, and the drive, and the partition where the kernel resides. GRUB based booting replaces the Solaris Device Configuration Assistant and simplifies the booting process with a GRUB menu.
After GRUB gains control of the system, a menu is displayed on the console. In the GRUB menu, you can do the following:
Select an entry to boot your system
Modify a boot entry by using the built-in GRUB edit menu
Manually load an OS kernel from the command line
A configurable timeout is available to boot the default OS entry. Pressing any key aborts the default OS entry boot.
To view an example of a GRUB menu, see Description of the GRUB Main Menu.
The device naming conventions that GRUB uses are slightly different from previous Solaris OS versions. Understanding the GRUB device naming conventions can assist you in correctly specifying drive and partition information when you configure GRUB on your system.
The following table describes the GRUB device naming conventions.
Table 4–1 Naming Conventions for GRUB Devices
Device Name |
Description |
---|---|
(fd0), (fd1) |
First diskette, second diskette |
(nd) |
Network device |
(hd0,0), (hd0,1) |
First and second fdisk partition of first bios disk |
(hd0,0,a), (hd0,0,b) |
Solaris/BSD slice 0 and 1 on first fdisk partition on the first bios disk |
All GRUB device names must be enclosed in parentheses. Partition numbers are counted from 0 (zero), not from 1.
For more information about fdisk partitions, see Guidelines for Creating an fdisk Partition in System Administration Guide: Devices and File Systems.
For more information about these changes, see the following references.
Table 4–2 Where to Find Information on GRUB Based Installations
Topic |
GRUB Menu Tasks |
For More Information |
---|---|---|
Installation |
To install from the Solaris OS CD or DVD media | |
To install from a network installation image | ||
To configure a DHCP server for network installations | ||
To install with the Custom JumpStart program | ||
To activate or fall back to a boot environment by using Solaris Live Upgrade | ||
System Administration |
For more detailed information about GRUB and for administrative tasks |
Chapter 11, GRUB Based Booting (Tasks), in System Administration Guide: Basic Administration |