System Administration Guide: Basic Administration

x86: Boot Options That Support Booting From a ZFS Root File System

On the x86 platform, a new GRUB keyword, $ZFS-BOOTFS has been introduced. When booting an x86 based system, if the root file system that corresponds with the GRUB menu entry is a ZFS dataset, the GRUB menu entry contains the -B option with the $ZFS-BOOTFS token by default. If you install or upgrade your system with a Solaris release that supports a ZFS boot loader, the GRUB menu.lst file is updated with this information automatically. The default bootable dataset is identified by the bootfs property.

On x86 based systems that are running a Solaris release that supports a ZFS boot loader, this information is included in the GRUB menu.

The following is an example of a default menu.lst file for a GRUB implementation that supports a ZFS boot loader:


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

This example shows a menu.lst file that has been manually edited to include an alternate bootable dataset entry:


title Solaris-alternate-dataset
bootfs myrootpool/bootenv-alt
kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS
module$ /platform/i86pc/$ISADIR/boot_archive

For step-by-step instructions on booting a system from ZFS, see Booting From a ZFS Root File System on an x86 Based System.