备份和还原系统状态

注意

本主题适用于 Windows Vista、Windows Server 2008 及更高版本。 有关 Windows Server 2003 的信息,请参阅 在 Windows Server 2003 R2 和 Windows Server 2003 SP1 中备份和还原系统状态

 

执行 VSS 备份或还原时,Windows 系统状态定义为多个关键操作系统元素及其文件的集合。 备份和还原操作应始终将这些元素视为一个单元。

注意

Microsoft 不提供开发人员或 IT 专业人员的技术支持,以在 Windows 上实现联机系统状态还原 (所有版本) 。

 

备份和恢复系统状态时,建议的策略是备份和恢复系统和启动卷,以及系统状态编写器枚举的文件。 系统状态编写器是 将 VSS_USAGE_TYPE 属性设置为 VSS_UT_BOOTABLESYSTEMSTATE 或 VSS_UT_SYSTEMSERVICE 的编写器。

重要

如果 VSS 编写器由其 VSS_USAGE_TYPE 标识为系统状态编写器,则必须将其包含在系统状态备份中,即使它是可选的。

 

除了枚举的操作系统和由系统状态编写器枚举的驱动程序二进制文件外,还有一些其他文件必须作为系统状态的一部分进行备份。

VSS 系统状态编写器报告的所有组件都是系统状态的一部分,但设置了VSS_CF_NOT_SYSTEM_STATE标志的组件除外。

备份程序还应设置 LastRestoreId 注册表项。 有关详细信息,请参阅 用于备份和还原的注册表项和值

注意

在 Windows Vista、Windows Server 2008 及更高版本中,某些系统文件的名称和位置已更改,如下所示。

 

系统状态

对于Windows Server 2012及更高版本,除了由各种 VSS 系统状态编写器报告的文件外,只需要显式包括以下许可文件,并且需要显式排除以下 DRM 文件。

Windows Media 数字版权管理文件

在 Windows Server 2008 及更高版本中,以下文件(包括以下路径下的所有子目录)将从系统状态中排除,并且不得备份:

  • %ProgramData%\Microsoft\Windows\DRM\

这将取代 使用文件系统和安全功能的 Windows Media 数字版权管理部分中的信息。

性能计数器配置文件

性能计数器配置文件位于 %SystemRoot%\System32\ 目录中,并具有以下名称:

Perf?00?。dat Perfc0??.dat Perfd0??.dat Perfh0??.dat Perfi0??.dat Prfc0???.dat Prfd0???.dat Prfh0???.dat Prfi0???.Dat

这些文件仅在应用程序安装期间修改,应在系统状态备份和还原期间进行备份和还原。

IIS 配置文件

注意

在 Windows Vista Service Pack 1 (SP1) 及更高版本中,不应备份这些文件。 请改用内置 IIS 配置编写器。 有关此编写器的详细信息,请参阅 内置 VSS 编写器

 

下面列出了相关的 IIS 配置文件及其位置:

  • .NET FX machine.config 文件位于框架版本目录中。

  • ASP.NET 根web.config文件位于框架版本目录中。

    注意

    .NET FX 和 ASP.NET 的配置文件都位于框架版本目录中。 如果计算机上安装了多个版本的框架,则此目录将为每个已安装的版本包含一个配置文件。

     

  • IIS applicationHost.config中央配置文件位于 %windir%\system32\inetsrv\config 目录中。 为使服务器了解此配置文件,有一些架构文件来确定其语法和结构。 这些文件位于 %windir%\system32\inetsrv\config\schema 目录中。

框架版本目录路径存储在以下注册表项中:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\InstallRoot

此外,必须备份以下加密密钥:

%ProgramData%\Microsoft\Crypto\RSA\MachineKeys\*
%SystemRoot%\System32\Microsoft\Protect\*

框架文件

必须备份 .NET Framework 的所有版本。 这些文件位于以下一个或两个目录中:

%windir%\\Microsoft.Net\\Framework %windir%\\Microsoft.Net\\Framework64

此外,必须备份程序集文件。 这些文件位于以下目录中:

%windir%\assembly

任务计划程序任务文件

必须备份任务计划程序的任务文件。 文件位于以下一个或两个位置:

%windir%\\system32\\tasks 和任何子目录 (递归) %windir%\\tasks (没有子目录)