GPTZFSBOOT(7) Standards, Environments, and Macros GPTZFSBOOT(7)

NAME


gptzfsboot - disk bootcode for BIOS-based computers

DESCRIPTION


gptzfsboot is used on BIOS-based computers to boot from a filesystem on
disk device. Depending on disk partitioning and boot file system, the
gptzfsboot is installed in a zfs pool boot area or boot partition of a
disk with installboot(8).

IMPLEMENTATION NOTES


The GPT standard allows a variable number of partitions, but gptzfsboot
only boots from tables with 128 partitions or less.

BOOTING


gptzfsboot tries to find all ZFS pools that are composed of BIOS-
visible hard disks or partitions on them. gptzfsboot looks for ZFS
device labels on all visible disks and in discovered supported
partitions for all supported partition scheme types. Disks are probed
in BIOS defined order. After a disk is probed and gptzfsboot
determines that the whole disk is not a ZFS pool member, the individual
partitions are probed in their partition table order. Currently GPT
and MBR partition schemes are supported.

The default boot partition is recorded into gptzfsboot binary by
installboot(8) and the default boot file system is determined at run
time. gptzfsboot does support booting from the ZFS, UFS and PCFS file
systems.

The filesystem specified by the bootfs property of the ZFS pool is used
as a default boot filesystem. If the bootfs property is not set, then
the root filesystem of the pool is used as the default. loader(7) is
loaded from the boot filesystem. If /boot/config is present in the
boot filesystem, boot options are read from it.

The ZFS GUIDs of the boot pool and boot file system are made available
to loader(7).

USAGE


Normally gptzfsboot will boot in fully automatic mode. However, it is
possible to interrupt the automatic boot process and interact with
gptzfsboot through a prompt.

The filesystem specification and the path to loader(7) is specified as

[zfs:pool/filesystem:][/path/to/loader]

Both the filesystem and the path can be specified. If only a path is
specified, then the default filesystem is used. If only a pool and
filesystem are specified, then /boot/loader is used as a path.

Additionally, the gptzfsboot does support two commands to get
information about the system. ?directoryname can be used to list the
content of named directory and status command can be used to query
information about discovered devices. The output format for ZFS pools
is similar to that of zpool status (see zpool(8)).

The configured or automatically determined ZFS boot filesystem is
stored in the loader(7) loaddev variable, and also set as the initial
value of the currdev variable.

OPTIONS


The following options are supported by gptzfsboot and loader(7):

-D Dual console. Use both text and serial console with gptzfsboot
and loader(7).

-P Probe for keyboard. If there is no keyboard, switch on the
dual console and serial console.

-Sspeed
Set serial port speed.

-h Set serial console.

-q Keep the gptzfsboot console quiet.

-t Keep the VGA text mode for loader(7).

The following options will be passed to the kernel:

-s Single user

-v Verbose boot

FILES


/boot/config parameters for the boot block (optional)
/boot/gptzfsboot boot code binary

EXAMPLES


gptzfsboot is installed in combination with a "protective MBR" (see
installboot(8)). To install gptzfsboot on the c0t0d0s0 drive:

installboot /boot/pmbr /boot/gptzfsboot /dev/rdsk/c0t0d0s0

SEE ALSO


loader(7), installboot(8), zpool(8)

illumos July 17, 2019 illumos

tribblix@gmail.com :: GitHub :: Privacy