活动目录的还原
活动目录的还原
你应该需要还原活动目录有两个原因。第一个原因是如果你的数据库不可用了-也许是因为一台域控制器的硬盘故障或者是数据库损坏一直不能载入。第二个原因是人员失误造成的目录信息问题。举个例子,如果默认删除了一个包含了几百个用户和群组帐号的OU,将会想要还原这些信息而不是重新录入。
如果你是因为其中一台域控制器的数据库不可用而要还原活动目录,你有两个选项。第一个选项是不还原失效的活动目录服务器,而是另选一台服务器装在Windows Server 2008使其成为新的域控制器。用这种方法,你将还原域控制器功能而不是活动目录到一台域控制器。第二种方法是修复失效的服务器然后将活动目录数据库还原到服务器。这种情形下,你要执行一个非授权还原。非授权还原将活动目录数据库还原到域控制器,然后自备份后的活动目录的所有修改被复制还原到域控制器。
如果是因为大量对象被删除而还原活动目录,你只有一个方法还原信息。你将使用含有被删除对象的备份还原活动目录到域控制器。然后你执行一个非授权还原。在非授权还原中,还原数据被标记因为它被复制到所有其他域控制器,覆盖删除信息。
创建新的域控制器还原活动目录
在一次故障后还原域控制器的一个方法是重建一个新的取代旧的。如果一台域控制器失效,你可以创建一台新的运行Windows Server 2008和活动目录的服务器,或者使用现存的服务器来提升为域控制器。然后你可以使用常规活动目录复制来转移活动目录数据库到新的域控制器。
注意 当你创建新域控制器是,如果复制要通过一个很慢的链接,例如分支办公室,使用IFM安装来减少复制所需要的时间。IFM安装使用Ntdsutil作为复制起始点创建的活动目录备份。
创建一个新的域控制器在以下情况下是作为最优方案的:
除了失效的服务器外你开有其他可用的域控制器。这是一个必备条件。如果你没有其他的域控制器作为可用的复制伙伴,你唯一的选择就是还原活动目录数据到一台新的或修复的域控制器。
创建新的域控制器以及从其他域控制器复制信息的时间远小于修复故障域控制器和还原数据库的时间。这个计算取决于活动目录数据库的大小,域控制器之间的网络速度,以及重建和还原域控制器的速度。如果你的活动目录数据库相对较小(小于100MB),并且另一台域控制器在同一局域网内,创建另一台域控制器复制数据库会比修复和还原故障域控制器要快。如果你有一个较大的数据库或是唯一可用的复制伙伴要跨过缓慢的广域网连接,修复故障域控制器和还原数据库会是较快的选择。
你不可以修复故障的域控制器。尽管使用不同硬件从原域控制器还原Windows Server 2008和活动目录数据库到服务器是可能实现的,但是这个过程非常困难且耗时间。如果你不能使用相似的硬件来修复故障的服务器,建立新的域控制器通常比较迅速。
当你需要做重大修改支持新的域控制器时,创建新的域控制器不是一个很好的选择。一个例子就是需要进行很多应用程序配置对特定的域控制器。重新配置这些程序到新的域控制器会花费比修理和还原域控制器更长的时间。程序重新配置问题可以通过在程序配置中使用主机名而不是IP地址来避免。为一个主机名重新配置DNS记录是一个快速的方法来开始使用一个新域控制器或替代域控制器的IP地址。
创建另一台域控制器来取代故障服务器,使用现有的运行Windows Server 2008的服务器(或创建新的服务器),将其升级为域控制器。在升级过程中,目录会被从另一台域控制器复制过来。如果故障的域控制器是一个全局编录(GC)服务器或是一个操作主机角色的载体,你需要考虑如何还原这一功能。还原GC服务器和操作主机服务器会在稍后章节“还原操作主机和全局编录服务器”中详细介绍。
如果你选择了创建新的域控制器来还原活动目录功能,你还需要从活动目录和DNS中移除旧的域控制器。如果你打算使用之前的域控制器名字,你需要在启动还原前使用Ntdsutil清理目录,如图15-4所示。如果你对新的域控制器使用不同的名字,那么在安装之后清除目录。
clip_p_w_picpath002
图15-4 使用Ntdsutil
从故障的域控制器清理目录,需要执行以下步骤:
1. 打开命令提示符。
2. 键入ntdsutil然后回车。
3. 在Ntdsutil提示符中,键入metadata cleanup然后回车。
4. 在Metadata Cleanup提示符中,键入connections然后回车。这一命令用于连接现有的域控制器对活动目录进行修改。
5. 在服务器连接提示符,键入connect to server servername,这里servernam可用域控制器的名称,然后回车。如果你使用一个具有活动目录管理员权限的帐号登入,你会被连接到域控制器。如果你没有管理员权限,使用set creds domain username password登录具有域水平许可的用户信任状。
6. 在服务器连接提示符,键入quit然后回车。回到元数据清除提示符。
7. 在元数据清除提示符,键入select operation target然后回车。这一命令是用来选择域、站点和域控制器以便于你移除域控制器。
8. 在选择操作目标提示符中,键入list domains然后回车。林中所有的域被列出并被标上序号。
9. 在选择操作目标提示符中,键入select domain number,这里的number是含有故障服务器的域序号,然后回车。
10. 在选择操作目标提示符中,键入list sites然后回车。林中所有的站点被列出并被标上序号。
11. 在选择操作目标提示符中,键入select site number,这里的number是含有故障服务器的站点序号,然后回车。
12. 在选择操作目标提示符中,键入list servers in sites然后回车。
13. 在选择操作目标提示符中,键入select server number,这里的number是故障域控制器的序号,然后回车。
14. 键入quit然后回车。这将你返回至元数据清除提示符。
15. 键入remove selected server 然后回车。
16. 点击Yes确认移除服务器。
17. 在每个提示符键入quit返回Ntdsutil。
注意 使用Dcpromo/foeceremoval 从服务器强制移除活动目录时,Ntdsutil过程也被使用。该命令在不需要清除活动目录元数据情形下使域控制器降级。当活动目录因为某种原因不可用时,这可以成为完全重建服务器的备用选项。
除了使用Ntdsutil清除目录对象,你还应该清除故障服务器的DNS记录。从DNS清楚所有的DNS记录,包括域控制器记录,全局编录服务器记录和主域控制器( PDC )模拟器记录。(最后两个存在于仅当域控制器被这些角色配置后)如果你不清除DNS记录,客户端会继续收到DNS信息并且尝试连接到域控制器。这样会导致客户端缓慢地尝试连接到服务器并最终无法连接到替代的域控制器。
Windows Server 2008和Windows Server 2003 SP1中的Ntdsutil版本自动执行一些活动目录清除任务,这些任务在之前的版本中都被手动执行:
■ 移除 NTDSA或NTDS设置
■ 移除用于复制的入站AD连接对象
■ 移除计算机帐号
■ 移除用于文件复制服务的FRS成员对象
■ 移除用于文件复制服务的FRS订户对象
■ 抢夺失效的故障域控制器上的FSMO角色
执行活动目录非授权还原
活动目录的非授权还原在两种情形下执行。当服务器上的活动目录服务数据库被损坏,执行活动目录的非授权还原重建数据库并允许其功能。当你执行一个域控制器的全面还原时,你也可以使用活动目录非授权还原。当域中仅有的域控制器发生故障时,域控制器的全面还原是必需的。当你想要故障域控制器的身份保持一致时,你也可以执行域控制器的全面还原。
备份后如果你要对活动目录做任何改变,备份带不会包含这些变化。然而,域中的其他域控制器会有最近的信息。如果因为服务器发生故障而重建域控制器,域控制器应该在恢复完成后从复制伙伴那里接受修改信息。为了做到这一点,你必须执行非授权还原。
在现有服务器上进行非授权还原
执行活动目录的非授权还原,你必须有一个域控制器关键卷的良好备份。你启动进入目录服务还原模式(DSRM),如图15-5所示;使用Wbadmin.exe从关键卷恢复系统状态。然后正常重启Windows Server 2008。域控制器重启后,它会连接复制伙伴并开始更新自己的数据库来反映自备份后任何域信息的修改。
clip_p_w_picpath004
图15-5 使用DSRM高级启动选项菜单
DSRM是对活动目录已被停止的域控制器的一种安全模式版本。登录到DSRM,你必须使用活动目录安装时创建的DSRM管理员帐号。这是在域控制器上安装活动目录时创建的本地管理员帐号。密码在安装过程中设置,和域管理员密码不一样。
注意 在Windows Server 2003和Windows Server 2008中,Ntdsutil被用于重置DSRM管理员帐号密码。在设置Dsrm密码环境下,使用命令reset password of server server,这里的server是你想要设置DSRM管理员帐号密码的域控制器。你可以使用null来表示本地服务器。
执行活动目录的非授权还原,需要执行以下步骤:
1. 修理故障域控制器。在这一点上,除了活动目录,服务器是有功能的。
2. 重启服务器,按F8进入高级启动选项菜单。
3. 选择目录服务还原模式。
注意 作为使用高级启动选项菜单的备选,你可以使用bcdedit/set safeboot dsrepair来设置作为目录服务还原模式(DSRM)的默认启动选项。当安装完成后,使用bcdedit/deletevalue safeboot然后从windows正常启动。
4. 使用DSRM管理员帐号登入。使用该用户登入,键入.\Administrator作为用户名。
5. 打开命令提示符。
6. 键入wbadmin get versions –backuptarget:backuplocation,这里backpacklocation是存储备份的盘符或UNC路径,然后回车。这列出了存储在该位置的所有备份。
7. 记录你想要还原的备份的版本标识符。这一标识符是备份被执行的时间。
8. 键入wbadmin start systemstaterecovery –version:identifier -backuptarget:backuplocation,这里 identifier是第七步中提到的版本标识符,backuplocation是存储备份的盘符或UNV路径,然后回车。图15-6显示了使用Wbadmin还原系统状态。
clip_p_w_picpath006
图15-6 使用Wbadmin.exe还原系统状态
9. 键入Y然后回车开始还原系统状态。
10. 还原完成后,重启域控制器。
域控制器的完全恢复
域控制器的完全恢复也是一种活动目录非授权还原。然而,它又包括了操作系统和其他数据的完全还原。当系统磁盘丢失且操作系统失效时这种方法是合适的。执行一个域控制器的完全恢复,你必须有一个完整的服务器备份。
在一些情形下,你也许需要使用相较于原服务器上可用的不同的硬件在服务器上还原域控制器。尽管在不同于产生备份的服务器的硬件上还原Windows Server 2008是可能实现的,但这过程有很多问题。如果非要这样,尽量选择兼容性的硬件。同时,确保新服务器的硬盘设置和故障的服务器上的相同。
在完全恢复中,服务器的操作系统是不能运作的。需要使用Windows RE执行一个还原来提供操作系统功能。你可以通过从Windows Server 2008安装DVD使用Windows 恢复环境(WindowsRE)。你也可以在本地硬盘驱动安装Windows RE使其在启动时高级启动选项中可用。
执行域控制器的完全恢复,需要遵照以下步骤:
1. 从Windows Server 2008安装DVD启动,按任意键从DVD启动。
2. 选择合适的语言选项,时间和通用格式,键盘布局,点击下一步。
3. 在安装windows对话框中,点击修复计算机。
4. 在系统恢复选项对话框中,如果需要的话,加载磁盘驱动,然后点击下一步。
5. 点击Windows完全计算机还原,如图15-7所示。
注意 如果本地备份找不到,你会收到错误信息。从网络位置还原是很常见的。
clip_p_w_picpath008
图15-7 Windows RE中的系统恢复选项
6. 选择还原备份的位置,可以是DVD,本地磁盘,或是网络位置。
7. 选择格式化和重新分配磁盘选项清除服务器上所有现存信息。
8. 为防止不是还原部分的磁盘被删除和重建,点击“排除磁盘”,选择你想要排除的磁盘。
9. 选择下一步,点击完成。
10. 选择“我确认想要格式化磁盘并还原备份”选框,点击OK。