Solaris ZFS Administration Guide

Booting From a ZFS Root File System on an x86 Based System

The following entries are added to the /pool-name/boot/grub/menu.lst file during the installation process or Solaris Live Upgrade operation to boot ZFS automatically:


title Solaris Express Community Edition zfsnv109BE X86
bootfs rpool/ROOT/zfsnv109BE
findroot (pool_rpool,0,a)
kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS
module$ /platform/i86pc/$ISADIR/boot_archive

If the device identified by GRUB as the boot device contains a ZFS storage pool, the menu.lst file is used to create the GRUB menu.

On an x86 based system with multiple ZFS BEs, you can select a BE from the GRUB menu. If the root file system corresponding to this menu entry is a ZFS dataset, the following option is added.


-B $ZFS-BOOTFS

Example 5–7 x86: Booting a ZFS File System

When booting from a ZFS file system, the root device is specified by the boot -B $ZFS-BOOTFS parameter on either the kernel or module line in the GRUB menu entry. This value, similar to all parameters specified by the -B option, is passed by GRUB to the kernel. For example:


title Solaris Express Community Edition zfsnv1095BE X86
findroot (pool_rpool,0,a)
bootfs rpool/ROOT/zfsnv109BE
kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS
module$ /platform/i86pc/$ISADIR/boot_archive


Example 5–8 x86: Booting a ZFS File System in Failsafe Mode

The x86 failsafe archive is /boot/x86.miniroot-safe and can be booted by selecting the Solaris failsafe entry from the GRUB menu. For example:


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


Example 5–9 x86: Fast Rebooting a ZFS Root File System

In the Solaris Express Community Edition, build 100, the fast reboot feature provides the ability to reboot within seconds on x86 based systems. With the fast reboot feature, you can reboot to a new kernel without experiencing the long delays that can be imposed by the BIOS and boot loader. The ability to fast reboot a system drastically reduces down time and improves efficiency.

You must still use the init 6 command when transitioning between BEs with the luactivate command. For other system operations where the reboot command is appropriate, you can use the reboot f command. For example:


# reboot -f