1.\" Copyright (c) 2016 Andriy Gapon 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $FreeBSD$ 26.\" 27.Dd October 12, 2016 28.Dt ZFSBOOTCFG 8 29.Os 30.Sh NAME 31.Nm zfsbootcfg 32.Nd "specify zfsboot options for the next boot" 33.Sh SYNOPSIS 34.Nm 35.Ao Ar options Ac 36.Sh DESCRIPTION 37.Nm 38is used to set 39.Xr boot.config 5 Ns -style 40options to be used by 41.Xr zfsboot 8 42or 43.Xr gptzfsboot 8 44the next time the machine is booted. 45Once 46.Xr zfsboot 8 47or 48.Xr gptzfsboot 8 49reads the information, it is deleted. 50If booting fails, the machine automatically reverts to the previous 51boot configuration. 52The information is stored in a special reserved area of a ZFS pool. 53.Xr zfsboot 8 54or 55.Xr gptzfsboot 8 56read the boot option information from the first disk found in the first 57ZFS pool found. 58.Sh ENVIRONMENT 59.Bl -tag -width vfs.zfs.boot.primary_pool -compact 60.It Ev vfs.zfs.boot.primary_pool 61The 62.Xr kenv 1 63variable that identifies a pool for which the options are written. 64.It Ev vfs.zfs.boot.primary_vdev 65The 66.Xr kenv 1 67variable that identifies a disk within the pool where the options 68are written. 69.El 70.Sh EXAMPLES 71Try to boot to a new 72.Em boot environment 73without changing the 74.Cm bootfs 75property of a pool: 76.Pp 77.Dl "zfsbootcfg ""zfs:tank/ROOT/newbe:"" 78.Pp 79To clear the boot options: 80.Pp 81.Dl "zfsbootcfg """" 82.Sh SEE ALSO 83.Xr boot.config 5 , 84.Xr gptzfsboot 8 , 85.Xr zfsboot 8 86.Sh HISTORY 87.Nm 88appeared in 89.Fx 12.0 . 90.Sh AUTHORS 91This manual page was written by 92.An Andriy Gapon Aq Mt avg@FreeBSD.org . 93.Sh CAVEATS 94At the moment, 95.Nm 96uses the 97.Ev vfs.zfs.boot.primary_pool 98and 99.Ev vfs.zfs.boot.primary_vdev 100.Xr kenv 1 101variables to determine a ZFS pool and a disk in it where the options 102are to be stored. 103The variables are set by the ZFS boot chain, so there is an assumption 104that the same boot disk is going to be used for the next reboot. 105There is no 106.Nm 107option to specify a different pool or a different disk. 108.Pp 109.Nm 110should be extended to install new 111.Xr zfsboot 8 112blocks in a ZFS pool. 113