beadm
—
Utility to manage Boot Environments with ZFS
beadm |
create [-e nonActiveBe |
-e beName@snapshot]
⟨beName⟩ |
beadm |
create ⟨beName@snapshot⟩ |
beadm |
destroy [-F ]
⟨beName |
beName@snapshot⟩ |
beadm |
list [-a ] [-D ]
[-H ] [-s ] |
beadm |
mount ⟨beName⟩ [mountpoint] |
beadm |
rename ⟨origBeName⟩
⟨newBeName⟩ |
beadm |
{ umount | unmount } [-f ]
⟨beName⟩ |
The beadm
command is used to setup and interact with
Boot Environments with ZFS.
Boot Environments allows the system to be
upgraded, while preserving the old system environment in a separate ZFS
dataset.
The following commands are supported by beadm
:
activate
<beName>
-
Activate the given beName for the next
boot.
create
- [
-e
nonActiveBe |
-e
beName@snapshot]
⟨beName⟩
Creates a new boot environment named
beName. If the -e param is specified, the new
environment will be cloned from the given
nonActiveBe |
beName@snapshot.
create
- ⟨beName@snapshot⟩
Creates a snapshot of the existing boot environment named
beName.
destroy
[-F
] ⟨beName |
beName@snapshot⟩
-
Destroys the given beName boot
environment or beName@snapshot snapshot.
Specifying -F
will automatically unmount without
confirmation.
list
- [
-a
] [-D
]
[-H
] [-s
]
Displays all boot environments. The Active field indicates
whether the boot environment is active now (N); active on reboot (R); or
both (NR). If -a
is used, display all datasets.
If -D
is used, display the full space usage for
each boot environment, assuming all other boot environments were
destroyed. The -H
option is used for scripting.
It does not print headers and separate fields by a single tab instead of
arbitrary white space. If -s
is used, display
all snapshots as well.
mount
- ⟨beName⟩ [mountpoint]
Temporarily mount the boot environment. Mount at the specified
mountpoint if provided.
rename
⟨origBeName⟩
⟨newBeName⟩
-
Renames the given nonactive origBeName
to the given newBeName
umount
- [
-f
] ⟨beName⟩
Unmount the given boot environment, if it is mounted.
Specifying -f
will force the unmount if
busy.
version
- List the beadm version and exit.
- Perform a system upgrade in a
jail(8)
Create a new boot environment called
jailed:
beadm create -e default
jailed
Set mountpoint for new jail to
/usr/jails/jailed:
beadm mount jailed
/usr/jails/jailed
The currently active boot environment is now replicated into
the jailed system and ready for upgrade. Startup the jail, login and
perform the normal upgrade process. Once this is done, stop the jail and
disable it in /etc/rc.conf.
Now activate the boot environment for the next boot
beadm activate
jailed
Reboot into the new environment
reboot
A HOWTO guide is posted at the FreeBSD forums:
- http://forums.freebsd.org/showthread.php?t=31662
- Slawomir Wojciech Wojtczak (vermaden)
vermaden@interia.pl
Creator and maintainer of beadm
.
- Bryan Drewery (bdrewery) bryan@shatow.net
Wrote this manual page and contributed child dataset
fixes.
- Mike Clarke (rawthey) jmc-fbsd@milibyte.co.uk
Wrote fast implementation of beadm
list.
Contributed a lot of fixes and usability changes.