15952343eSKyle Evans.\" 2*4d846d26SWarner Losh.\" SPDX-License-Identifier: BSD-2-Clause 3b179da01SKyle Evans.\" 4b179da01SKyle Evans.\" Copyright (c) 2017 Kyle J. Kneitinger <kyle@kneit.in> 55952343eSKyle Evans.\" 65952343eSKyle Evans.\" Redistribution and use in source and binary forms, with or without 75952343eSKyle Evans.\" modification, are permitted provided that the following conditions 85952343eSKyle Evans.\" are met: 95952343eSKyle Evans.\" 1. Redistributions of source code must retain the above copyright 105952343eSKyle Evans.\" notice, this list of conditions and the following disclaimer. 115952343eSKyle Evans.\" 2. Redistributions in binary form must reproduce the above copyright 125952343eSKyle Evans.\" notice, this list of conditions and the following disclaimer in the 135952343eSKyle Evans.\" documentation and/or other materials provided with the distribution. 145952343eSKyle Evans.\" 155952343eSKyle Evans.\" 165952343eSKyle Evans.\" @(#)be.1 17b6e7c421SKyle Evans.\" 185952343eSKyle Evans.\" $FreeBSD$ 195952343eSKyle Evans.\" 204163bae0SKyle Evans.Dd April 26, 2023 21edbfe3bcSKyle Evans.Dt BECTL 8 2284e61219SKyle Evans.Os 235952343eSKyle Evans.Sh NAME 24edbfe3bcSKyle Evans.Nm bectl 2577688bffSMateusz Piotrowski.Nd Utility to manage boot environments on ZFS 265952343eSKyle Evans.Sh SYNOPSIS 275952343eSKyle Evans.Nm 284163bae0SKyle Evans.Op Fl r Ar beroot 29d81df689SKyle Evans.Cm activate 30e307eb94SToomas Soome.Op Fl t | Fl T 31d81df689SKyle Evans.Ar beName 325952343eSKyle Evans.Nm 334163bae0SKyle Evans.Op Fl r Ar beroot 34490e13c1SKyle Evans.Cm check 35490e13c1SKyle Evans.Nm 364163bae0SKyle Evans.Op Fl r Ar beroot 37d81df689SKyle Evans.Cm create 385952343eSKyle Evans.Op Fl r 3977688bffSMateusz Piotrowski.Op Fl e Brq Ar nonActiveBe | Ar beName Ns Cm @ Ns Ar snapshot 4077688bffSMateusz Piotrowski.Ar newBeName 415952343eSKyle Evans.Nm 424163bae0SKyle Evans.Op Fl r Ar beroot 4355ece394SKyle Evans.Cm create 4455ece394SKyle Evans.Op Fl r 4555ece394SKyle Evans.Ar beName@snapshot 4655ece394SKyle Evans.Nm 474163bae0SKyle Evans.Op Fl r Ar beroot 48d81df689SKyle Evans.Cm destroy 4977b4126cSKyle Evans.Op Fl \&Fo 5077688bffSMateusz Piotrowski.Ar beName Ns Op Cm @ Ns Ar snapshot 515952343eSKyle Evans.Nm 524163bae0SKyle Evans.Op Fl r Ar beroot 53d81df689SKyle Evans.Cm export 54d81df689SKyle Evans.Ar sourceBe 5534761e84SKyle Evans.Nm 564163bae0SKyle Evans.Op Fl r Ar beroot 57d81df689SKyle Evans.Cm import 58d81df689SKyle Evans.Ar targetBe 5934761e84SKyle Evans.Nm 604163bae0SKyle Evans.Op Fl r Ar beroot 61d81df689SKyle Evans.Cm jail 6277688bffSMateusz Piotrowski.Op Fl bU 6377688bffSMateusz Piotrowski.Oo Bro Fl o Ar key Ns Cm = Ns Ar value | Fl u Ar key Brc Oc Ns ... 6477688bffSMateusz Piotrowski.Ar beName 65cd816834SKyle Evans.Op Ar utility Op Ar argument ... 665952343eSKyle Evans.Nm 674163bae0SKyle Evans.Op Fl r Ar beroot 68d81df689SKyle Evans.Cm list 6977688bffSMateusz Piotrowski.Op Fl aDHs 70f0298be0SKyle Evans.Op Fl c Ar property 71f0298be0SKyle Evans.Op Fl C Ar property 72f0298be0SKyle Evans.Oo Bro Fl c Ar property | Fl C Ar property Brc Oc 735952343eSKyle Evans.Nm 744163bae0SKyle Evans.Op Fl r Ar beroot 75d81df689SKyle Evans.Cm mount 76d81df689SKyle Evans.Ar beName 7777688bffSMateusz Piotrowski.Op Ar mountpoint 785952343eSKyle Evans.Nm 794163bae0SKyle Evans.Op Fl r Ar beroot 80d81df689SKyle Evans.Cm rename 81d81df689SKyle Evans.Ar origBeName 82d81df689SKyle Evans.Ar newBeName 835952343eSKyle Evans.Nm 844163bae0SKyle Evans.Op Fl r Ar beroot 85d81df689SKyle Evans.Brq Cm ujail | unjail 86b1ea63e2SRobert Wing.Brq Ar jailId | jailName | beName 875952343eSKyle Evans.Nm 884163bae0SKyle Evans.Op Fl r Ar beroot 89d81df689SKyle Evans.Brq Cm umount | unmount 905952343eSKyle Evans.Op Fl f 91d81df689SKyle Evans.Ar beName 9277688bffSMateusz Piotrowski.Pp 9377688bffSMateusz Piotrowski.Nm 9477688bffSMateusz Piotrowski.Op Fl h\&? 955952343eSKyle Evans.Sh DESCRIPTION 965952343eSKyle EvansThe 975952343eSKyle Evans.Nm 98d81df689SKyle Evanscommand is used to setup and interact with ZFS boot environments, which are 99d81df689SKyle Evansbootable clones of datasets. 1005952343eSKyle Evans.Pp 10177688bffSMateusz PiotrowskiBoot environments 10277688bffSMateusz Piotrowskiallow the system to be upgraded, while preserving the old system environment in 103d81df689SKyle Evansa separate ZFS dataset. 10477688bffSMateusz Piotrowski.Pp 1054163bae0SKyle Evans.Nm 1064163bae0SKyle Evansitself accepts an 1074163bae0SKyle Evans.Fl r 1084163bae0SKyle Evansflag specified before the command to indicate the 1094163bae0SKyle Evans.Ar beroot 1104163bae0SKyle Evansthat should be used as the boot environment root, or the dataset whose children 1114163bae0SKyle Evansare all boot environments. 1124163bae0SKyle EvansNormally this information is derived from the bootfs property of the pool that 1134163bae0SKyle Evansis mounted at 1144163bae0SKyle Evans.Pa / , 1154163bae0SKyle Evansbut it is useful when the system has not been booted into a ZFS root or a 1164163bae0SKyle Evansdifferent pool should be operated on. 1174163bae0SKyle EvansFor instance, booting into the recovery media and manually importing a pool from 1184163bae0SKyle Evansone of the system's resident disks will require the 1194163bae0SKyle Evans.Fl r 1204163bae0SKyle Evansflag to work. 1214163bae0SKyle Evans.Pp 1225952343eSKyle EvansThe following commands are supported by 1235952343eSKyle Evans.Nm : 1245952343eSKyle Evans.Bl -tag -width activate 125d81df689SKyle Evans.It Xo 126d81df689SKyle Evans.Cm activate 127e307eb94SToomas Soome.Op Fl t | Fl T 128d81df689SKyle Evans.Ar beName 129d81df689SKyle Evans.Xc 1305952343eSKyle EvansActivate the given 1315952343eSKyle Evans.Ar beName 13284e61219SKyle Evansas the default boot filesystem. 13384e61219SKyle EvansIf the 13455b954c6SMateusz Piotrowski.Fl t 1355952343eSKyle Evansflag is given, this takes effect only for the next boot. 136e307eb94SToomas SoomeFlag 137e307eb94SToomas Soome.Fl T 138e307eb94SToomas Soomeremoves temporary boot once configuration. 139e307eb94SToomas SoomeWithout temporary configuration, the next boot will use zfs dataset specified 140e307eb94SToomas Soomein boot pool 141e307eb94SToomas Soome.Ar bootfs 142e307eb94SToomas Soomeproperty. 143d81df689SKyle Evans.It Xo 144490e13c1SKyle Evans.Cm check 145490e13c1SKyle Evans.Xc 146490e13c1SKyle EvansPerforms a silent sanity check on the current system. 147490e13c1SKyle EvansIf boot environments are supported and used, 148490e13c1SKyle Evans.Nm 149490e13c1SKyle Evanswill exit with a status code of 0. 150490e13c1SKyle EvansAny other status code is not currently defined and may, in the future, grow 151490e13c1SKyle Evansspecial meaning for different degrees of sanity check failures. 152490e13c1SKyle Evans.It Xo 153d81df689SKyle Evans.Cm create 1545952343eSKyle Evans.Op Fl r 15577688bffSMateusz Piotrowski.Op Fl e Brq Ar nonActiveBe | Ar beName Ns Cm @ Ns Ar snapshot 15677688bffSMateusz Piotrowski.Ar newBeName 157d81df689SKyle Evans.Xc 15877688bffSMateusz PiotrowskiCreate a new boot environment named 15977688bffSMateusz Piotrowski.Ar newBeName . 16077688bffSMateusz Piotrowski.Pp 16177688bffSMateusz PiotrowskiIf the 16277688bffSMateusz Piotrowski.Fl r 16377688bffSMateusz Piotrowskiflag is given, a recursive boot environment will be made. 164c0f846ffSKyle EvansSee 165c0f846ffSKyle Evans.Sx Boot Environment Structures 166c0f846ffSKyle Evansfor a discussion on different layouts. 16777688bffSMateusz Piotrowski.Pp 1685952343eSKyle EvansIf the 169d81df689SKyle Evans.Fl e 17077688bffSMateusz Piotrowskiflag is specified, the new environment will be cloned from the given 17177688bffSMateusz Piotrowski.Ar nonActiveBe 17277688bffSMateusz Piotrowskior 17377688bffSMateusz Piotrowski.Ar beName Ns Cm @ Ns Ar snapshot . 1744163bae0SKyle EvansOtherwise, the new environment will be created from the currently booted 1754163bae0SKyle Evansenvironment. 17677688bffSMateusz Piotrowski.Pp 17777688bffSMateusz PiotrowskiIf 17877688bffSMateusz Piotrowski.Nm 1794163bae0SKyle Evansis creating from another boot environment, a snapshot of that boot environment 1804163bae0SKyle Evanswill be created to clone from. 181d81df689SKyle Evans.It Xo 18255ece394SKyle Evans.Cm create 18355ece394SKyle Evans.Op Fl r 18455ece394SKyle Evans.Ar beName@snapshot 18555ece394SKyle Evans.Xc 18655ece394SKyle EvansCreate a snapshot of the boot environment named 18755ece394SKyle Evans.Ar beName . 18855ece394SKyle Evans.Pp 18955ece394SKyle EvansIf the 19055ece394SKyle Evans.Fl r 19155ece394SKyle Evansflag is given, a recursive snapshot of the boot environment will be created. 19255ece394SKyle EvansA snapshot is created for each descendant dataset of the boot environment. 193c0f846ffSKyle EvansSee 194c0f846ffSKyle Evans.Sx Boot Environment Structures 195c0f846ffSKyle Evansfor a discussion on different layouts. 19655ece394SKyle Evans.Pp 19755ece394SKyle EvansNo new boot environment is created with this command. 19855ece394SKyle Evans.It Xo 199d81df689SKyle Evans.Cm destroy 20077b4126cSKyle Evans.Op Fl \&Fo 20177688bffSMateusz Piotrowski.Ar beName Ns Op Cm @ Ns Ar snapshot 202d81df689SKyle Evans.Xc 20377688bffSMateusz PiotrowskiDestroy the given 2045952343eSKyle Evans.Ar beName 2055952343eSKyle Evansboot environment or 20677688bffSMateusz Piotrowski.Ar beName Ns Cm @ Ns Ar snapshot 2078369ba42SKyle Evanssnapshot without confirmation, unlike in 20877688bffSMateusz Piotrowski.Xr beadm 1 . 2095952343eSKyle EvansSpecifying 2105952343eSKyle Evans.Fl F 2115952343eSKyle Evanswill automatically unmount without confirmation. 21277b4126cSKyle Evans.Pp 21377b4126cSKyle EvansBy default, 21477b4126cSKyle Evans.Nm 21577b4126cSKyle Evanswill warn that it is not destroying the origin of 21677b4126cSKyle Evans.Ar beName . 21777b4126cSKyle EvansThe 21877b4126cSKyle Evans.Fl o 21977b4126cSKyle Evansflag may be specified to destroy the origin as well. 220d81df689SKyle Evans.It Cm export Ar sourceBe 22134761e84SKyle EvansExport 22234761e84SKyle Evans.Ar sourceBe 22334761e84SKyle Evansto 22477688bffSMateusz Piotrowski.Xr stdout 4 . 22577688bffSMateusz Piotrowski.Xr stdout 4 22634761e84SKyle Evansmust be piped or redirected to a file. 227d81df689SKyle Evans.It Cm import Ar targetBe 22834761e84SKyle EvansImport 22934761e84SKyle Evans.Ar targetBe 23034761e84SKyle Evansfrom 23177688bffSMateusz Piotrowski.Xr stdin 4 . 232d81df689SKyle Evans.It Xo 233d81df689SKyle Evans.Cm jail 23477688bffSMateusz Piotrowski.Op Fl bU 23577688bffSMateusz Piotrowski.Oo Bro Fl o Ar key Ns Cm = Ns Ar value | Fl u Ar key Brc Oc Ns ... 23677688bffSMateusz Piotrowski.Ar beName 237cd816834SKyle Evans.Op Ar utility Op Ar argument ... 238d81df689SKyle Evans.Xc 23977688bffSMateusz PiotrowskiCreate a jail of the given boot environment. 240d694059fSKyle EvansMultiple 241d694059fSKyle Evans.Fl o 2422a0b8dc2SKyle Evansand 2432a0b8dc2SKyle Evans.Fl u 244d694059fSKyle Evansarguments may be specified. 2452a0b8dc2SKyle Evans.Fl o 2462a0b8dc2SKyle Evanswill set a jail parameter, and 2472a0b8dc2SKyle Evans.Fl u 2482a0b8dc2SKyle Evanswill unset a jail parameter. 249cd816834SKyle Evans.Pp 250cd816834SKyle EvansBy default, jails are created in interactive mode and 251cd816834SKyle Evans.Pa /bin/sh 252cd816834SKyle Evansis 253b509cad4SKyle Evansexecuted within the jail. 254cd816834SKyle EvansIf 255cd816834SKyle Evans.Ar utility 256cd816834SKyle Evansis specified, it will be executed instead of 257cd816834SKyle Evans.Pa /bin/sh . 258db9db0e7SKyle EvansThe jail will be destroyed and the boot environment unmounted when the command 259db9db0e7SKyle Evansfinishes executing, unless the 260db9db0e7SKyle Evans.Fl U 261db9db0e7SKyle Evansargument is specified. 262cd816834SKyle Evans.Pp 263b509cad4SKyle EvansThe 264b509cad4SKyle Evans.Fl b 265b509cad4SKyle Evansargument enables batch mode, thereby disabling interactive mode. 266db9db0e7SKyle EvansThe 267db9db0e7SKyle Evans.Fl U 268db9db0e7SKyle Evansargument will be ignored in batch mode. 2692a0b8dc2SKyle Evans.Pp 2702a0b8dc2SKyle EvansThe 2712a0b8dc2SKyle Evans.Va name , 2722a0b8dc2SKyle Evans.Va host.hostname , 2732a0b8dc2SKyle Evansand 2742a0b8dc2SKyle Evans.Va path 2757ce09314SKyle Evansmust be set, the default values are specified below. 2762a0b8dc2SKyle Evans.Pp 2772a0b8dc2SKyle EvansAll 27877688bffSMateusz Piotrowski.Ar key Ns Cm = Ns Ar value 279d694059fSKyle Evanspairs are interpreted as jail parameters as described in 280d694059fSKyle Evans.Xr jail 8 . 281d694059fSKyle EvansThe following default parameters are provided: 282d81df689SKyle Evans.Bl -column "allow.mount.devfs" "" 283d81df689SKyle Evans.It Va allow.mount Ta Cm true 284d81df689SKyle Evans.It Va allow.mount.devfs Ta Cm true 285d81df689SKyle Evans.It Va enforce_statfs Ta Cm 1 28677688bffSMateusz Piotrowski.It Va name Ta Set to jail ID. 287d81df689SKyle Evans.It Va host.hostname Ta Va bootenv 28877688bffSMateusz Piotrowski.It Va path Ta Set to a path in Pa /tmp 28977688bffSMateusz Piotrowskigenerated by 29084e61219SKyle Evans.Xr libbe 3 . 291d694059fSKyle Evans.El 2925952343eSKyle Evans.Pp 2932a0b8dc2SKyle EvansAll default parameters may be overwritten. 294f0298be0SKyle Evans.It Xo 295f0298be0SKyle Evans.Cm list 296b1ea63e2SRobert Wing.Op Fl aDHs 297f0298be0SKyle Evans.Oo Bro Fl c Ar property | Fl C Ar property Brc Oc 298f0298be0SKyle Evans.Xc 299f0298be0SKyle Evans.Pp 30077688bffSMateusz PiotrowskiDisplay all boot environments. 30177688bffSMateusz PiotrowskiThe 30277688bffSMateusz Piotrowski.Em Active 30377688bffSMateusz Piotrowskifield indicates whether the boot environment is active now 30477688bffSMateusz Piotrowski.Pq Em \&N ; 30577688bffSMateusz Piotrowskiactive on reboot 30677688bffSMateusz Piotrowski.Pq Em \&R ; 307e307eb94SToomas Soomeis used on next boot once 308e307eb94SToomas Soome.Pq Em \&T ; 309e307eb94SToomas Soomeor combination of 310e307eb94SToomas Soome.Pq Em \&NRT . 311f0298be0SKyle Evans.Bl -tag -width indent 312f0298be0SKyle Evans.It Fl a 313f0298be0SKyle EvansDisplay all datasets. 314f0298be0SKyle Evans.It Fl D 315f0298be0SKyle EvansDisplay the full space usage for each boot environment, assuming all 316d81df689SKyle Evansother boot environments were destroyed. 317f0298be0SKyle Evans.It Fl H 318f0298be0SKyle EvansUsed for scripting. 319f0298be0SKyle EvansDo not print headers and separate fields by a single tab instead of 320d81df689SKyle Evansarbitrary white space. 321f0298be0SKyle Evans.It Fl s 322f0298be0SKyle EvansDisplay all snapshots as well. 323f0298be0SKyle Evans.It Fl c Ar property 324f0298be0SKyle EvansSort boot environments by given property name. 325f0298be0SKyle EvansThe following properties are supported: 326f0298be0SKyle Evans.Pp 327f0298be0SKyle Evans.Bl -tag -width 4n -offset indent -compact 328f0298be0SKyle Evans.It name (default output) 329f0298be0SKyle Evans.It creation 330f0298be0SKyle Evans.It origin 331f0298be0SKyle Evans.It used 332f0298be0SKyle Evans.It usedds 333f0298be0SKyle Evans.It usedsnap 334f0298be0SKyle Evans.It usedrefreserv 335f0298be0SKyle Evans.El 336f0298be0SKyle Evans.It Fl C Ar property 337f0298be0SKyle EvansSame as the 338f0298be0SKyle Evans.Fl c 339f0298be0SKyle Evansoption, but displays in descending order. 340f0298be0SKyle Evans.El 341f0298be0SKyle Evans.Pp 342f0298be0SKyle EvansThe 343f0298be0SKyle Evans.Fl D 344f0298be0SKyle Evansoption is ignored when either the 3455952343eSKyle Evans.Fl s 346f0298be0SKyle Evansor 347f0298be0SKyle Evans.Fl a 348f0298be0SKyle Evansoption is used. 349d81df689SKyle Evans.It Cm mount Ar beName Op Ar mountpoint 3505952343eSKyle EvansTemporarily mount the boot environment. 3515952343eSKyle EvansMount at the specified 3525952343eSKyle Evans.Ar mountpoint 3535952343eSKyle Evansif provided. 354d81df689SKyle Evans.It Cm rename Ar origBeName newBeName 35577688bffSMateusz PiotrowskiRename the given 3565952343eSKyle Evans.Ar origBeName 3575952343eSKyle Evansto the given 358d81df689SKyle Evans.Ar newBeName . 3598369ba42SKyle EvansThe boot environment will not be unmounted in order for this rename to occur. 360b1ea63e2SRobert Wing.It Cm ujail Brq Ar jailId | jailName | beName 361b1ea63e2SRobert Wing.It Cm unjail Brq Ar jailId | jailName | beName 36277688bffSMateusz PiotrowskiDestroy the jail created from the given boot environment. 36377688bffSMateusz Piotrowski.It Xo 36477688bffSMateusz Piotrowski.Cm umount 36577688bffSMateusz Piotrowski.Op Fl f 36677688bffSMateusz Piotrowski.Ar beName 36777688bffSMateusz Piotrowski.Xc 368d81df689SKyle Evans.It Xo 369d81df689SKyle Evans.Cm unmount 3705952343eSKyle Evans.Op Fl f 371d81df689SKyle Evans.Ar beName 372d81df689SKyle Evans.Xc 3735952343eSKyle EvansUnmount the given boot environment, if it is mounted. 3745952343eSKyle EvansSpecifying 3755952343eSKyle Evans.Fl f 3765952343eSKyle Evanswill force the unmount if busy. 3775952343eSKyle Evans.El 37877688bffSMateusz Piotrowski.Pp 37977688bffSMateusz Piotrowski.Nm 38077688bffSMateusz Piotrowskiprints usage information if 38177688bffSMateusz Piotrowski.Fl h 38277688bffSMateusz Piotrowskior 38377688bffSMateusz Piotrowski.Fl \&? 38477688bffSMateusz Piotrowskiis specified. 385c0f846ffSKyle Evans.Ss Boot Environment Structures 386c0f846ffSKyle EvansThe traditional 387c0f846ffSKyle Evans.Fx 388c0f846ffSKyle Evansboot environment layout, as created by the Auto ZFS option to 389c0f846ffSKyle Evans.Xr bsdinstall 8 , 390c0f846ffSKyle Evansis a 391c0f846ffSKyle Evans.Dq shallow 392c0f846ffSKyle Evansboot environment structure, where boot environment datasets do not have any 393c0f846ffSKyle Evansdirectly subordinate datasets. 394c0f846ffSKyle EvansInstead, they're organized off in 395c0f846ffSKyle Evans.Pa zroot/ROOT , 396c0f846ffSKyle Evansand they rely on datasets elsewhere in the pool having 397c0f846ffSKyle Evans.Dv canmount 398c0f846ffSKyle Evansset to 399c0f846ffSKyle Evans.Dv off . 400c0f846ffSKyle EvansFor instance, a simplified pool may be laid out as such: 401c0f846ffSKyle Evans.Bd -literal -offset indent 402c0f846ffSKyle Evans% zfs list -o name,canmount,mountpoint 403c0f846ffSKyle EvansNAME CANMOUNT MOUNTPOINT 404c0f846ffSKyle Evanszroot 405c0f846ffSKyle Evanszroot/ROOT noauto none 406c0f846ffSKyle Evanszroot/ROOT/default noauto none 407c0f846ffSKyle Evanszroot/usr off /usr 408c0f846ffSKyle Evanszroot/usr/home on /usr/home 409c0f846ffSKyle Evanszroot/var on /var 410c0f846ffSKyle Evans.Ed 411c0f846ffSKyle Evans.Pp 412c0f846ffSKyle EvansIn that example, 413c0f846ffSKyle Evans.Pa zroot/usr 414c0f846ffSKyle Evanshas 415c0f846ffSKyle Evans.Dv canmount 416c0f846ffSKyle Evansset to 417c0f846ffSKyle Evans.Dv off , 418c0f846ffSKyle Evansthus files in 419c0f846ffSKyle Evans.Pa /usr 420c0f846ffSKyle Evanstypically fall into the boot environment because this dataset is not mounted. 421c0f846ffSKyle Evans.Pa zroot/usr/home 422c0f846ffSKyle Evansis mounted, thus files in 423c0f846ffSKyle Evans.Pa /usr/home 424c0f846ffSKyle Evansare not in the boot environment. 425c0f846ffSKyle Evans.Pp 426c0f846ffSKyle EvansThe other style of boot environments in use, frequently called 427c0f846ffSKyle Evans.Dq deep boot environments , 428c0f846ffSKyle Evansorganizes some or all of the boot environment as subordinate to the boot 429c0f846ffSKyle Evansenvironment dataset. 430c0f846ffSKyle EvansFor example: 431c0f846ffSKyle Evans.Bd -literal -offset indent 432c0f846ffSKyle Evans% zfs list -o name,canmount,mountpoint 433c0f846ffSKyle EvansNAME CANMOUNT MOUNTPOINT 434c0f846ffSKyle Evanszroot 435c0f846ffSKyle Evanszroot/ROOT noauto none 436c0f846ffSKyle Evanszroot/ROOT/default noauto none 437c0f846ffSKyle Evanszroot/ROOT/default/usr noauto /usr 438c0f846ffSKyle Evanszroot/ROOT/default/usr/local noauto /usr/local 439c0f846ffSKyle Evanszroot/var on /var 440c0f846ffSKyle Evans.Ed 441c0f846ffSKyle Evans.Pp 442c0f846ffSKyle EvansNote that the subordinate datasets now have 443c0f846ffSKyle Evans.Dv canmount 444c0f846ffSKyle Evansset to 445c0f846ffSKyle Evans.Dv noauto . 446c0f846ffSKyle EvansThese are more obviously a part of the boot environment, as indicated by their 447c0f846ffSKyle Evanspositioning in the layout. 448c0f846ffSKyle EvansThese subordinate datasets will be mounted by the 449c0f846ffSKyle Evans.Dv zfsbe 450c0f846ffSKyle Evans.Xr rc 8 451c0f846ffSKyle Evansscript at boot time. 452c0f846ffSKyle EvansIn this example, 453c0f846ffSKyle Evans.Pa /var 454c0f846ffSKyle Evansis excluded from the boot environment. 455c0f846ffSKyle Evans.Pp 456c0f846ffSKyle Evans.Nm 457c0f846ffSKyle Evanscommands that have their own 458c0f846ffSKyle Evans.Fl r 459c0f846ffSKyle Evansoperate on this second, 460c0f846ffSKyle Evans.Dq deep 461c0f846ffSKyle Evansstyle of boot environment, when the 462c0f846ffSKyle Evans.Fl r 463c0f846ffSKyle Evansflag is set. 464c0f846ffSKyle EvansA future version of 465c0f846ffSKyle Evans.Nm 466c0f846ffSKyle Evansmay default to handling both styles and deprecate the various 467c0f846ffSKyle Evans.Fl r 468c0f846ffSKyle Evansflags. 469d6105756SMateusz Piotrowski\" .Sh EXAMPLES 470d6105756SMateusz Piotrowski\" .Bl -bullet 471d6105756SMateusz Piotrowski\" .It 472d6105756SMateusz Piotrowski\" To fill in with jail upgrade example when behavior is firm. 473d6105756SMateusz Piotrowski\" .El 4745952343eSKyle Evans.Sh SEE ALSO 475f5c8cb4cSMateusz Piotrowski.Xr libbe 3 , 476cb67aaf2SAlan Somers.Xr beinstall.sh 8 , 4775952343eSKyle Evans.Xr jail 8 , 4785952343eSKyle Evans.Xr zfs 8 , 4795952343eSKyle Evans.Xr zpool 8 4805952343eSKyle Evans.Sh HISTORY 4815952343eSKyle Evans.Nm 4825952343eSKyle Evansis based on 48377688bffSMateusz Piotrowski.Xr beadm 1 4845952343eSKyle Evansand was implemented as a project for the 2017 Summer of Code, along with 4855952343eSKyle Evans.Xr libbe 3 . 4865952343eSKyle Evans.Sh AUTHORS 487d81df689SKyle Evans.Nm 488d81df689SKyle Evanswas written by 489d81df689SKyle Evans.An Kyle Kneitinger (kneitinger) Aq Mt kyle@kneit.in . 4905952343eSKyle Evans.Pp 49177688bffSMateusz Piotrowski.Xr beadm 1 492d81df689SKyle Evanswas written and is maintained by 493d81df689SKyle Evans.An Slawomir Wojciech Wojtczak (vermaden) Aq Mt vermaden@interia.pl . 4945952343eSKyle Evans.Pp 49534761e84SKyle Evans.An Bryan Drewery (bdrewery) Aq Mt bryan@shatow.net 496d81df689SKyle Evanswrote the original 49777688bffSMateusz Piotrowski.Xr beadm 1 4985952343eSKyle Evansmanual page that this one is derived from. 499