ZFSBOOTCFG(8)

πŸ“¦
version 15.1 Β· 2 versions
, in freebsd 15.1

πŸ’… zfsbootcfg β€” like, set your zfsboot options for the next boot only, bestie

okay so this is zfsbootcfg(8), from the System Manager's Manual, and honestly? she's giving "set it and forget it" but make it ✨temporary✨.


🌸 SYNOPSIS

zfsbootcfg ⟨options⟩
zfsbootcfg [-n name] [-k key] [-p] [-t type] [-v value] [-z pool]
zfsbootcfg

no cap, that's the whole vibe right there 🫢


πŸ’– DESCRIPTION

so zfsbootcfg is what you use to set boot.config(5)-style options that gptzfsboot(8) or loader(8) will pick up the next time the machine boots. that's it, that's the whole job πŸ’…

and here's the iconic part β€” once gptzfsboot(8) or loader(8) reads that info, it gets deleted. gone. poof. one-time-use only, like a limited edition drop πŸŽ€

and if the boot fails? the machine automatically reverts to the previous boot configuration. she's got your back, fr fr 🫢

where does it live? the information is stored in a special boot environment area of a ZFS pool. very exclusive, very VIP πŸ‘‘

if you run it with no arguments at all, zfsbootcfg will output the current boot configuration β€” but only if it's set. otherwise there's nothing to show 🌸

the following options are supported by zfsbootcfg:


✨ OPTIONS ✨

  • -k key β€” define the key for the ⟨key, value⟩ pair. you bring the key, it brings the rest πŸ”‘
  • -n name β€” update the nvlist name. little name refresh, no big deal πŸ’«
  • -p β€” print all the information stored in the ZFS pool bootenv area. the whole tea, spilled β˜•
  • -t type β€” set the type of the value used in the ⟨key, value⟩ pair. currently supported types are:
DATA_TYPE_BYTE
DATA_TYPE_INT8
DATA_TYPE_UINT8
DATA_TYPE_INT16
DATA_TYPE_UINT16
DATA_TYPE_INT32
DATA_TYPE_UINT32
DATA_TYPE_INT64
DATA_TYPE_UINT64
DATA_TYPE_BOOLEAN_VALUE
DATA_TYPE_STRING

and if you don't specify one? the default is DATA_TYPE_STRING. she assumes string until told otherwise 🧚

  • -v value β€” define the value for the ⟨key, value⟩ pair. the other half of the duo, obviously πŸ’–
  • -z pool β€” operate on pool. pick your pool, bestie 🏊

🌈 ENVIRONMENT

  • vfs.root.mountfrom β€” the kenv(1) variable that identifies a pool for which the options are written. that's the one that tells her where to write 🌸

πŸ¦‹ EXAMPLES

trying to boot into a new boot environment without changing the bootfs property of a pool? iconic, love that for you:

zfsbootcfg "zfs:tank/ROOT/newbe:"

and to clear the boot options entirely (the ✨clean slate✨ moment):

zfsbootcfg ""
lowkey the empty string is doing a lot of work there, don't skip the quotes πŸ™ˆ

πŸ‘‘ SEE ALSO

boot.config(5), bectl(8), gptzfsboot(8), loader(8)


πŸ’€ HISTORY

zfsbootcfg appeared in FreeBSD 11.1. she's been around a minute πŸ’…


πŸŽ€ AUTHORS

this manual page was written by Andriy Gapon <avg@FreeBSD.org>. thank you for your service 🫢


okay that's the whole page, mwah πŸ’‹ β€” brought to you by Debian, dated July 28, 2025, and this little ZFSBOOTCFG(8) footer moment is your girl signing off πŸŒŸπŸ’–

πŸ“¦ where this page comes from
  • freebsd 15.1: base 15.1
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms