Active Directory 概述 
 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

Active Directory 为管理员提供组织网络资源,管理用户、计算机和应用程序所需要的中心服务。
 

Active Directory 中可以存储许多不同的对象,包括:
 
  • 用户
  • 安全凭据,例如证书
  • 系统资源,例如计算机(或服务器)和打印机
  • 复制组件,设置本身也是 Active Directory 中的对象
  • COM 组件配置,以前它存储在 Windows NT 中的注册表中,现在则存储在 Active Directory 的类中
  • 控制工作环境的规则和策略

下面的图 1 描述了集中存储在 Active Directory 中的许多不同对象。

 
 

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

1 可以存储在 Active Directory 中的许多不同对象。

 
Active Directory 数据库

Active Directory 是一个事务处理数据库系统,它使用日志文件来支持回滚语法,从而确保将事务提交到数据库中。与 Active Directory 关联的文件包括:
 

  • Ntds.dit — 数据库。
  • Edbxxxxx.log — 事务日志。
  • Edb.chk — 检查点文件。
  • Res1.log Res2.log — 预留的日志文件。

Ntds.dit 会随着数据库的填充而不断增大。但是,日志的大小却是固定的 (10 MB)。对数据库进行的任何更改都会被追加到当前的日志文件中,而且其磁盘映像会不断保持更新。

Edb.log 是当前的日志文件。对数据库进行更改后,会将该更改写入到 Edb.log 文件中。当 Edb.log 文件充满事务之后,它会被重新命名为 Edbxxxxx.log。(从 00001 开始,并使用十六进制累加。)由于 Active Directory 使用循环记录,所以在旧日志文件写入数据库之后,这些旧日志文件会及时删除。在任何时刻都可以找到 edb.log 文件,而且还可能有一个或多个 Edbxxxxx.log 文件。

Res1.log Res2.log 占位符”— 用来在此驱动器上预留(在此情况下)最后的 20 MB 磁盘空间。这是为了给日志文件提供足够的空间,以便在其它所有磁盘空间都已使用的情况下可以正常关机。

Edb.chk 文件存储数据库的检查点,这些检查点标识数据库引擎需要重复播放日志的点,通常在恢复或初始化时。

出于性能考虑,日志文件应该位于数据库所在磁盘以外的其它磁盘上,以减少磁盘争用情况。

在进行备份时,可能会创建新的日志文件。如前所述,由于要进行循环记录,所以需要删除该日志文件(如常规旧日志文件)。
在考虑 Active Directory 的恢复技术时,复制和松散一致性是非常重要的概念。

 
Active Directory 备份

Active Directory 灾难恢复规划的一个重要部分,是理解 Active Directory 备份的含义和注意事项。

 
系统状态

Active Directory 会被作为系统状态的一部分进行备份,而系统状态是相互依赖的系统组件的集合。这些组件必须一起备份(和还原)。
 

组成域控制器上系统状态的组件包括:

 
系统启动文件(引导文件)。这些文件是引导 Windows 2000 所必需的文件。它们会作为系统状态的一部分自动进行备份。

系统注册表。当您备份系统状态数据时,会自动备份注册表的内容。另外,注册表文件的副本保存在 %SystemRoot%\Repair\Regback 文件夹中,您可还原注册表,而不用还原整个系统状态。

COM+ 的类注册数据库。组件对象模型 (COM) 是一个二进制标准,用于在分布式系统环境中编写组件软件。组件服务类注册数据库与系统状态数据一起进行备份和还原。

SYSVOL。系统卷为那些必须在域中共享以供访问的文件,提供默认的 Active Directory 位置。域控制器上的 SYSVOL 文件夹包括以下内容:

Net Logon 共享。(其中通常驻留着用于基于非 Windows 2000 网络客户端的登录脚本和策略对象。)
文件系统联接。
基于 Windows 2000 Professional 的客户端以及运行 Windows 95Windows 98 Windows NT 4.0 的客户端的用户登录脚本。
Windows 2000
组策略。
需要在域控制器上可用并需要在域控制器间同步的文件复制服务 (FRS) 分段目录和文件。
Active Directory
。包括:

Ntds.dit Active Directory 数据库。
Edb.chk
。检查点文件。
Edb*.log
。事务日志;每一个大小为 10 MB
Res1.log
Res2.log。预留的事务日志。
注意 如果您具有集成 Active Directory DNS,则区域数据会作为 Active Directory 数据库的一部分进行备份。如果您没有集成 Active Directory DNS,则区域文件必须单独进行备份。但是,如果您与系统状态一起备份系统磁盘,则该数据会作为系统磁盘的一部分进行备份。

如果域控制器上安装了群集服务或证书服务,则它们会作为系统状态的一部分进行备份。这些组件的详细信息不属于本文的讨论范围。

 
备份类型
Windows 2000
中的备份工具支持多种类型的备份,包括:

 
  • 普通备份
  • 副本备份
  • 增量备份
  • 差异备份
  • 每日备份

但是,由于 Active Directory 作为系统状态的一部分进行备份,所以 Active Directory 可用的备份类型只有普通备份。在域控制器联机时,普通备份会创建整个系统状态的备份。另外,它还会将每一个文件都标记为已备份,这样就会清除文件的存档属性。

 
什么才算是好的备份?

为确保能从备份中成功进行还原,了解什么备份才算是好的备份十分重要。对于 Active Directory,必须考虑两件事情:

 
内容
备份的首要方面是它的内容。好的备份至少包括系统状态、系统磁盘的内容以及 SYSVOL 文件夹(如果不在系统磁盘上)。如前所述,系统状态包括许多用于还原域控制器的关键文件和设置。备份系统磁盘和 SYSVOL 文件夹结构,可确保成功还原所需的所有系统文件和文件夹都位于备份中。

注意 为获得最佳性能,Active Directory 的日志和数据库文件应位于单独的磁盘中。如果您是按这种方式配置 DC 的,则 Active Directory 的各个组件会分散在多个驱动器中,例如 D:\Winnt\NTDS 用于存储日志,而 E:\Winnt\NTDS 用于存储数据库。

由于 Active Directory 日志文件和数据库作为系统状态的一部分进行备份,所以只须备份系统磁盘和系统状态,即可获得一个好的备份,即使是在这种分布式安装的情况下。

 
时限
如果备份的时限超出在 Active Directory 中设置的逻辑删除时限,则该备份就不能算是一个好的备份。

Windows 2000 中删除一个对象后,在其上删除了该对象的 DC 会通过称为逻辑删除的复制来通知环境中的其它 DC,告知它们已执行了此次删除操作。

逻辑删除表示已删除的、但并没有完全从目录中删除的对象。根据逻辑删除存留时间设置(默认设置为 60 天),最终会删除该逻辑删除。如果将 DC 还原到对象删除之前的状态,而在该对象的逻辑删除到期之前,没有将该逻辑删除复制到已还原的 DC 上,则该对象只在该还原 DC 上存在,这样就会导致不一致的情况。因此,必须在逻辑删除到期之前还原该 DC,而且要保证在该逻辑删除到期之前,完成从包含该逻辑删除的 DC 中到已还原的 DC 的入站复制。

Active Directory 可以通过禁止执行还原操作,来防止其自身还原比逻辑删除存留时间长的数据。因此,备份的可用时限与企业的逻辑删除存留时间设置相等。

出于这种考虑,备份的间隔应该是在逻辑删除存留时间内至少有一次。但是,Microsoft 强烈建议管理员要更加频繁地备份系统状态和系统磁盘,以确保在任何给定的时间都有包含最新版本数据的备份。

重要信息 某一 DC 的备份数据只能用于还原该 DC。不能使用一个 DC 的备份来还原另一个 DC。为确保对环境进行彻底的备份,必须对每一个域控制器都进行备份。在制定备份策略时应切记这一点。最低的要求是要备份所有的 OM 角色和 GC。而且,始终要备份根域中的第一个域控制器。

 
Active Directory 灾难恢复流程图
 
数据库损坏在这种情况下发生以下几种情况之一:
 
  • 磁盘损坏,例如由于电源故障和坏电池而导致没有保存写回缓存。
  • 域控制器出现严重的硬件故障,需要进行更换。
  • 软件故障使得计算机无法以正常模式进行引导。
  • 数据损坏在这种情况下,管理员或具有适当权限的某个人意外地删除了某一对象,而且该删除操作已经复制到环境中的其它 DC

 

磁盘损坏灾难恢复步骤。
 

 

域控制器硬件故障灾难恢复步骤。
 

 

数据损坏灾难恢复步骤。
 

 

恢复 Active Directory


还原 Windows 2000 DC 的方法主要有两种:

 
  • 通过重新安装进行还原。
  • 从备份中进行还原。

本文不详述该还原流程。