System State Backups and SBS 2008

[Today's post comes to us courtesy of John Bay]

The normal backup that SBS 2008 creates contains all the necessary information to restore the entire server. The normal SBS backup includes the system state data. You may wish to create a system state backup of the machine before you make critical changes to the machine or active directory. The ability to take just a system state backup is not exposed in the GUI interface of backup. If you wish to take just a system state backup you must use the wbadmin.exe utility. WBadmin.exe is a command line utility. You must first open a command prompt as administrator.

The command to start a system state backup is:

Wbadmin start systemstatebackup –backuptarget:F:

Where F: is the drive where you wish to store the system state backup.

The target volume for a system state backup cannot be a source volume by default. A source volume is any volume that has a file that is included in the backup. To change that behavior, you can add the AllowSSBToAnyVolume registry entry to the server. However, there are known issues with storing a system state backup on a source volume:

  • Backups can fail. The backup can be modified during the backup process, which might cause the backup to fail.
  • It causes an inefficient use of target space. Twice the amount of space is necessary for a backup than for the original data. The volume must allocate twice the amount of space for the shadow copy process.

The path for adding the new registry entry is as follows:

HKLMSYSTEMCurrentControlSetServiceswbengineSystemStateBackupAllowSSBToAnyVolume
Type: DWORD
Value: 1

A value of 0 prevents the storing of system state backup on a source volume. A value of 1 allows the storing of system state backup on a source volume.

The backup process will create a directory on the target drive named WindowsImageBackup. This directory will contain the system state backup of the server. The system state backup of an SBS 2008 server is considerably larger than the same backup on an SBS 2003 server. The average system state backup size is around 11GB.

If you wish to restore a system state backup, you must first reboot the server into Directory Services Restore Mode (DSRM). Once in DSRM, you would open a command prompt with administrator rights and use the following commands to start the restore.

We must first determine the version of the backup that you wish to restore.

The command WBADMIN GET VERSIONS will display all the backups on the machine and the version identifier.

The output will look similar to this:

Backup time: 10/7/2008 3:33 PM
Backup target: Fixed Disk labeled D:
Version identifier: 10/07/2008-20:33
Can Recover: Application(s), System State

This backup job was completed on 10/7/2008 at 3:33pm and was saved to drive D:. The backup job has the ability to restore the system state and is version identifier 10/07/2008-20:33

Once we have located the version identifier, we can initiate the restore by using the following command:

WBADMIN START SYSTEMSTATERECOVERY -version: <version id>

Where version id is the version identifier you obtained with the Get Versions command.

For our example the command would be:

WBADMIN START SYSTEMSTATERECOVERY -version: 10/07/2008-20:33

WBADMIN will restore the system state information back to the data from the backup. Once the restore process is complete, you will have to reboot the machine into normal mode to complete the restore.