Beginning with version 9.1, PC-BSD supports multiple boot environments on systems that were formatted with ZFS during installation. In 9.1, this feature is configured from the command line. Version 9.2 will provide a graphical interface for managing boot environments (BEs).

Multiple boot environments is a feature originally created by Solaris. By default, a ZFS system is considered to be a BE, since you can boot into it. Multiple boot environments allow you to create additional BEs, or bootable, point-in-time snapshots of the ZFS filesystem. By booting into an alternate BE, you return to that point in time in the filesystem. For example, if you create a BE before upgrading, you could configure the system to boot into that BE should the upgrade fail and you wish to return to what the filesystem looked like before the upgrade. Alternately, you could create a snapshot BE to install and configure some software that you wish to test. Simply boot into that BE and perform your test installations. When you are finished your tests, set the system to boot back into the original BE.

BE's are managed with the beadm command which must be run as the superuser. The following example creates a BE named beforeupgrade. The new BE is a clone of the current BE, the ZFS environment that you booted into.

In this example, the current BE is called default, it is active now and at next reboot, and is mounted. The newly created beforeupgrade BE exists, but is inactive and unmounted. To activate the new BE: