Backing Up and Restoring System State
This topic applies to Windows Vista, Windows Server 2008, and later. For information about Windows Server 2003, see Backing Up and Restoring System State in Windows Server 2003 R2 and Windows Server 2003 SP1
When performing a VSS backup or restore, the Windows system state is defined as being a collection of several key operating system elements and their files. These elements should always be treated as a unit by backup and restore operations.
Microsoft does not provide developer or IT professional technical support for implementing online system state restores on Windows (all releases).
When backing up and recovering system state, the recommended strategy is to back up and recover the system and boot volumes in addition to the files enumerated by the system state writers. System state writers are writers that have the VSS_USAGE_TYPE attribute set to either VSS_UT_BOOTABLESYSTEMSTATE or VSS_UT_SYSTEMSERVICE.
If a VSS Writer is identified by its VSS_USAGE_TYPE as a system state writer it must be included in a system state backup even if it is selectable.
In addition to the enumerated operating system and driver binary files that are enumerated by the system state writers, there are certain other files that must be backed up as part of system state.
All the components reported by a VSS system state writer are part of system state except those for which the VSS_CF_NOT_SYSTEM_STATE flag is set.
Backup programs should also set the LastRestoreId registry key. For more information, see Registry Keys and Values for Backup and Restore.
In Windows Vista, Windows Server 2008, and later, the names and locations of some system files have been changed as follows.
For Windows Server 2012 and later, in addition to the files reported by the various VSS system-state writers, only the following licensing files need to be included explicitly, and the following DRM files need to be excluded explicitly.
Windows Media Digital Rights Management Files
In Windows Server 2008 and later, the following files, including all subdirectories under the following path, are excluded from system state and must not be backed up:
This supersedes the information in the Windows Media Digital Rights Management section of Working with File System and Security Features.
Performance Counter Configuration Files
The performance counter configuration files are located in the %SystemRoot%\System32\ directory and have the following names:
These files are only modified during application installation and should be backed up and restored during system state backups and restores.
IIS Configuration Files
In Windows Vista with Service Pack 1 (SP1) and later, you should not back up these files. Instead, use the in-box IIS configuration writer. For more information about this writer, see In-Box VSS Writers.
The relevant IIS configuration files and their locations are listed below:
The .NET FX machine.config file is located in the framework version directory.
The ASP.NET root web.config file is located in the framework version directory.
The configuration files for both .NET FX and ASP.NET are in the framework version directory. If multiple versions of the framework are installed on the computer, this directory will contain one configuration file for each installed version.
The IIS applicationHost.config central configuration file is located in the %windir%\system32\inetsrv\config directory. For the server to understand this configuration file, there are schema files that determine its grammar and structure. These files are located in the %windir%\system32\inetsrv\config\schema directory.
The framework version directory path is stored in the following registry key:
In addition, the following cryptography keys must be backed up:
All versions of the .NET framework must be backed up. The files are located in one or both of the following directories:
In addition, the assembly files must be backed up. These files are located in the following directory:
Task Scheduler Task Files
The task scheduler's task files must be backed up. The files are located in one or both of the following locations:
- %windir%\\system32\\tasks and any subdirectories (recursively)
%windir%\\tasks (no subdirectories)