Why Use Multiple Boot Environments?
With multiple boot environments, the process of updating software becomes a low risk
operation because you can create backup boot environments before making any software updates
to your system. If needed, you have the option of booting a
backup boot environment.
Here are some specific examples where having more than one OpenSolaris boot environment,
and managing them with the beadm utility, is useful:
When you use either the Package Manager tool or the pkg image-update command to update all the packages in your active OpenSolaris boot environment, this process automatically creates a clone of that boot environment. The packages are updated in the clone rather than in the original boot environment. After successfully completing the updates, the new clone is activated. Then, the clone will become the new default boot environment on the next reboot. The original boot environment remains on the GRUB menu as an alternate selection.
For more information, see “Upgrading an Image” in Getting Started With OpenSolaris 2008.11.
You can use the beadm list command to see a list of all the boot environments on the system, including the backup boot environment that still has its original, unchanged software. If you are not satisfied with the updates made to the environment, you can use the beadm activate command to specify that the backup will become the default boot environment on the next reboot.
If you are modifying a boot environment, you can take a snapshot of that environment at any stage during modifications by using the beadm create command. A snapshot is a read-only image of a dataset or boot environment at a given point in time.
You can create custom names for each snapshot that identify when or why the snapshot was created. For example, if you are doing monthly upgrades to your boot environment, you can capture snapshots for each monthly upgrade. You can use the beadm list -s command to view the available snapshots for a boot environment.
A snapshot is not bootable. But, you can create a boot environment, based on that snapshot, by using the -e option for the beadm create command. Then you can use the beadm activatecommand to specify that this boot environment will become the default boot environment on the next reboot.
You can maintain more than one boot environment on your system, and perform various upgrades on each of them as needed. For example, you can clone a boot environment by using the beadm create command. A clone is a bootable copy of a boot environment. Then, you can install, test, and update different software packages on the original boot environment and on its clone.
Although only one boot environment can be active at a time, you can mount an inactive boot environment by using the beadm mount command. Then you can use the pkg image-update command with the -R option to update all the packages in that inactive, mounted environment. Or, use the pkg install packagename with the -R option to update specific packages on that environment.