NAME
zfsboot
—
bootcode for ZFS on BIOS-based
computers
DESCRIPTION
zfsboot
is used on BIOS-based computers to
boot from a filesystem in a ZFS pool. zfsboot
is
installed in two parts on a disk or a partition used by a ZFS pool. The
first part, a single-sector starter boot block, is installed at the
beginning of the disk or partition. The second part, a main boot block, is
installed at a special offset within the disk or partition. Both areas are
reserved by the ZFS on-disk specification for boot use. If
zfsboot
is installed in a partition, then that
partition should be made bootable using appropriate configuration and boot
blocks described in
boot(8).
BOOTING
The zfsboot
boot process is very similar
to that of
gptzfsboot(8). One significant difference is that
zfsboot
does not currently support the GPT
partitioning scheme. Thus only whole disks and MBR partitions, traditionally
referred to as slices, are probed for ZFS disk labels. See the BUGS section
in gptzfsboot(8) for some limitations of the MBR scheme
support.
USAGE
zfsboot
supports all the same prompt and
configuration file arguments as
gptzfsboot(8).
FILES
- /boot/zfsboot
- boot code binary
- /boot.config
- parameters for the boot block (optional)
- /boot/config
- alternative parameters for the boot block (optional)
EXAMPLES
zfsboot
is typically installed using
dd(1). To install zfsboot
on the
ada0 drive:
dd if=/boot/zfsboot of=/dev/ada0 count=1 dd if=/boot/zfsboot of=/dev/ada0 iseek=1 oseek=1024
If the drive is currently in use, the GEOM safety will prevent writes and must be disabled before running the above commands:
sysctl kern.geom.debugflags=0x10
zfsboot
can also be installed in an MBR
slice:
gpart create -s mbr ada0 gpart add -t freebsd ada0 gpart bootcode -b /boot/boot0 ada0 gpart set -a active -i 1 ada0 dd if=/dev/zero of=/dev/ada0s1 count=2 dd if=/boot/zfsboot of=/dev/ada0s1 count=1 dd if=/boot/zfsboot of=/dev/ada0s1 iseek=1 oseek=1024
Note that commands to create and populate a pool are not shown in the example above.
SEE ALSO
dd(1), boot.config(5), boot(8), gptzfsboot(8), loader(8), zpool(8)
HISTORY
zfsboot
appeared in FreeBSD 7.3.
AUTHORS
This manual page was written by Andriy Gapon ⟨avg@FreeBSD.org⟩.
BUGS
Installing zfsboot
with
dd(1)
is a hack. ZFS needs a command to properly install
zfsboot
onto a ZFS-controlled disk or partition.