System Administration Guide: Basic Administration
  Search only this book
Download this book in PDF (2825 KB)

x86: Supported GRUB Implementations

In the Solaris Express release, GRUB uses the direct boot implementation. The contents of the menu.lst file varies, depending on the Solaris release you are running, the installation method that is used, and whether you are booting the system from a ZFS root or a UFS root.


Note –

In this implementation of GRUB, the multiboot module is no longer used.


Description of the menu.lst File (ZFS Support)

The following are various examples of a menu.lst file for a boot environment that contains a ZFS boot loader:


Note –

Because the miniroot is mounted as the real root file system, the entry for failsafe booting in the menu.lst file does not change to the ZFS bootfs property, even if the failsafe archive is read from a ZFS dataset. The ZFS dataset is not accessed after the boot loader reads the miniroot.



Example 15–1 Default menu.lst File (New Installation or Standard Upgrade)


title Solaris 11 s10x_90 X86
findroot (pool_rpool,0,a)
kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS
module$ /platform/i86pc/$ISADIR/boot_archive

title Solaris 11 failsafe
findroot (pool_rpool,0,a)
kernel /boot/platform/i86pc/kernel/unix -s -B console=ttyb
module /boot/x86.miniroot-safe


Example 15–2 Default menu.lst File (Solaris Live Upgrade)


title be1
findroot (BE_be1,0,a)
bootfs rpool/ROOT/szboot_0508
kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS
module$ /platform/i86pc/$ISADIR/boot_archive

title be1 failsafe
findroot (BE_be1,0,a)
kernel /boot/platform/i86pc/kernel/unix -s -B console=ttyb
module /boot/x86.miniroot-safe

Description of the menu.lst File (UFS Support)

The following are examples of a menu.lst file on a system that supports booting from UFS.


Example 15–3 Default GRUB menu.lst File (New Installation or Standard Upgrade)


title Solaris 10 5/08 s10x_nbu6wos_nightly X86 
findroot (pool_rpool,0,a)
kernel /platform/i86pc/multiboot
module /platform/i86pc/boot_archive

title Solaris failsafe
findroot (rootfs0,0,a)
kernel /boot/multiboot kernel/unix -s -B console-ttyb
module /boot/x86.miniroot-safe


Example 15–4 Default GRUB menu.lst File (Solaris Live Upgrade)


title be1
findroot (BE_be1,0,a)
kernel$ /platform/i86pc/kernel/$ISADIR/unix
module$ /platform/i86pc/$ISADIR/boot_archive

title be1 failsafe
findroot (BE_be1,0,a)
kernel /boot/platform/i86pc/kernel/unix -s -B console=ttyb
module /boot/x86.miniroot-safe

Description of a menu.lst File That Supports Hypervisor Technology

You can run the Solaris OS as a virtualized control domain, with the hypervisor. To run the Solaris release with this support, there must be an entry in menu.lst file that specifies the hypervisor. This entry can either be the default boot menu item, or you can select this entry manually at boot time. After you upgrade your system for the first time to a Solaris release that includes this support, the bootadm command automatically adds a GRUB menu.lst entry for the hypervisor.

The following are menu.lst entries for this GRUB implementation:


title Solaris on xVM
kernel$ /boot/$ISADIR/xen.gz
module$ /platform/i86xpv/kernel/$ISADIR/unix /platform/i86xpv/kernel/$ISADIR/unix -B $ZFS-BOOTFS
module$ /platform/i86pc/$ISADIR/boot_archive
  • The kernel$ line specifies a path to xen.gz file, followed by optional hypervisor arguments.

  • The first module$ line includes the path to UNIX twice, followed by any arguments for the Solaris dom0 kernel.

  • The second module$ line provides the path to the boot archive.

Note that the path to UNIX in the menu.lst entry for the hypervisor uses i86xpv, not i86pc. The options that are interpreted by the hypervisor are added to end of the kernel$ line, after the xen.gz file information.

If you choose to run the Solaris release as a stand-alone OS, you can continue to use the same GRUB menu entries that you used previously.

For example:


title Solaris Nevada ... X86
kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS
module$ /platform/i86pc/$ISADIR/boot_archive

For more information about how to modify GRUB menu.lst entries, see x86: How to Modify Boot Behavior by Editing the menu.lst File.