活动目录数据库包含大量核心基础数据,应该妥善保护,及时备份。活动目录数据库是“dit”格式的数据库,和Exchange Server使用的数据库。


维护活动目录数据库

活动目录数据库文件

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

    ·Ntds.dit,Active Directory数据库文件;

    ·Edbxxxxx.log,事务日志文件;

    ·Edb.chk,检查点文件;

    ·Res1.log和Res2.log,预留的日志文件;

    ·Temp.edb,临时数据库维护文件;

    ·Edbtmp.log,日志暂存文件

    1.Ntds.dit

    Ntds.dit随着数据库的填充而不断增大,日志的大小是固定的10MB。对数据库进行的任何更改都会被首先写到当前日志文件中,然后写入Acitve Directory数据库文件。

    2.Edb.log

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

    3.Res1.log和Res2.log

    Res1.log和Res2.log是预留日志空间文件,确保在此驱动器上预留(在此情况下)最后的20MB磁盘空间。采取这种做法的原因:为了给日志文件提供足够的空间,以便在其他所有磁盘空间都已使用的情况下可以正常关机。

    4.Edb.chk

    Edb.chk是数据库检查点文件,检查点是标识数据库引擎需要重复播放日志的点,通常在恢复或初始化时验证数据库的一致性。处于性能考虑,日志文件应该位于数据库所在的磁盘以外的其他磁盘上,以减少磁盘争用情况。进行备份时,会创建新的日志文件。

    5.Temp.edb

    Temp.edb文件是数据库维护时使用的临时文件,用于存储当前进行中处理的信息。

    6.Edbtmp.log

    Edbtmp.log日志文件是当前日志文件(Edb.log)填满时的暂时日志填充文件。Edbtmp.log文件被创建后,已有的Edb.log文件被重命名为下一个日志文件,然后Edbtmp.log文件被重命名为Wdb.log。因为该文件被重命名为下一个日志文件,然后Edbtmplog文件被重命名为Edb.log。因为该文件名的使用很短暂,通常都看不到。

    7.文件位置

    默认状态下,活动目录数据库文件位于“C:\Windows\NTDS”目录中。


停止AD DS域服务

    维护活动目录数据库前,域管理员需要停止AD DS域服务,域管理员可以通过多种方式停止AD DS域服务。

    1.Net命令

    Net stop NTDS

    启动AD DS

    Net Start NTDS

    2.“服务”控制台

    打开“服务”控制台,选择“Active Directory Domain Services”服务,服务处于运行状态。

    打开“Acitve Directory Domain Services”属性对话框,显示当前服务信息。单击“停止”按钮,显示停止AD DS。

    停止成功后。如果要启动AD DS域服务单击“启动”按钮,即可启动AD DS域服务。


重定向活动目录数据库    

    活动目录数据库的默认位置是“c:\windows\NTDS”目录,如果在部署AD DS初期计划分配的磁盘空间不足,或者担心活动目录数据库安全,可以将其重定向到其他磁盘或者文件夹中。重定向活动目录数据库需要停止AD DS服务。


  1. 查看活动目录数据库的当前位置

    以域管理员身份登录可读写的域控制器。

    C:\ntdstutil

    ntdsutil:Activate Instance NTDS

    活动实例设置为“NTDS”。

    命令执行后,激活NTDS实例。

    ntdsutil:Files

    服务“NTDS”正在运行。绑定到该Acitve Directory数据库之前停止该服务。

    命令执行后,如果AD DS域服务处于运行状态,提示管理员需要首先停止服务。

    ntdsutil:files

    命令执行后,切换到文件维护模式

    file maintenance:info


    2.重定向活动目录数据库

    在file maintenance命令提示符下,键入以下命令

    file maintenance :move db to E:\ntds

    回车,将活动目录数据库移动到“E:\NTds”目录下,

    file maintenance命令提示符下,键入以下命令。

    file maintenance :info

    命令执行后,显示活动目录数据库的基本信息


离线整理活动目录数据库

    维护活动目录数据库过程中,除了定期对活动目录数据库进行监控、排错、分析、空间监控等工作之外,还需要对活动目录数据库进行整理。

    1.活动目录数据库整理方式:在线整理

    在线整理,是活动目录数据库的默认操作,每隔12小时自动整理一次,这个过程被称之为Acitve Directory的在线碎片整理过程。虽然在线整理不需要系统管理员手工参与,但是在线整理对缩小数据库的大小毫无用处,相反却增大活动目录数据库的空间。要减小活动目录数据库的大小,需要对活动目录数据库进行离线整理。

    2.活动目录数据库整理方式:离线整理

    离线整理:需要域管理员首先停止AD DS域服务,然后对活动目录数据库进行整理。离线整理前,需要确认目标磁盘必须具备足够的磁盘空间,空闲磁盘至少需要2倍的活动目录数据库空间。

    离线整理过程:

    第1步,首先停止AD DS域服务。

    Net stop ntds

    第2步,在命令提示符下,键入如下命令。

    ntdsutil

    ntdsutil :Activate Instance NTDS

    ntdsutil Files

    file maintenance :compact to e:\temp

    回车,命令执行后,压缩并整理当前的活动目录数据库。

    键入两次“Quit”,退出ntdsutil命令

    第3步

    copy "e:\temp\ntds.dit" "e:\ntds\ntds.dit"

    del c:\ntds\*.log

    第4步,重启

    net start ntds


修复活动目录数据库

    根据系统出错信息、系统日志或者应用程序的报错,确认是否为活动目录数据库出现问题,如果确认出现问题可以使用“Ntdsutil”工具进行修复,对活动目录数据库的修复可能不会达到预期的效果。如果活动目录数据库真的损坏,使用修复操作也不可能恢复成正常数据库,反而会丢失更多的数据。在活动目录数据库修复前,需要将出现故障的域控制器脱离网络,以免影响其他域控制器正常运行,确认域控制器完全正常后再接入网络。

    提示

    修复数据库的方法仅作为最后解决活动目录数据库故障的手段,如果有有效备份,建议使用恢复备份的方法来恢复活动目录数据库。

    第1步,停止AD DS域服务

    Net stop ntds

    第2步,在命令提示符下,键入如下命令

    ntdsutil

    ntdsutil :Activate Instance NTDS

    ntdsutil :Files

    file maintenance :recover

    命令执行后,执行数据库故障修复

    第3步,重启域服务,完成活动目录数据库的修复。

    Net Start ntds


重置目录服务还原模式管理员密码

    目录服务还原模式管理员账户密码是在提升域控制器的过程中设置的密码,如果长时间没有使用,管理员可能会遗忘该密码。如果确实遗忘密码,可以通过“ntdsutil”工具重置密码。

    在命令提示符下,键入

    Ntdsutil

    ntdsutil: set DSRM password

    重置DSRM管理员密码:reset password on server DC-bj.book.com

    命令执行后,提示“请输入还原模式Administrator账户和密码”,键入新的密码,该密码必须符合强密码策略。


查找和清理重复的安全标识符

    使用“Ntdsutil”工具可以检查,在活动目录数据库中是否存在重复的安全标识符(SID),如果网络中使用Ghost等系统还原工具还原系统,将会出现重复的SID。

    第1步,

    C:\>ntdsutil

    ntdsutil:

    ntdsutil: security account management

    命令执行后,切换到“安全策略账户维护”

    安全策略账户维护:connect to server dc-bj.book.com

    安全策略账户维护:check duplicate sid

    命令执行后,检查当前活动目录数据库中是否存在重复的SID,结果输出在dupsid.log文件中。

    安全策略账户维护:cleanup duplicate sid

    命令执行后,清楚当前活动目录数据库中重复的SID,结果输出在dupsid.log文件中。


自动管理活动目录数据库

    “Ntdsutil”是一个命令行工具,管理员可以使用它来挂历和修复Active Directory。该工具是一个菜单驱动工具,设计模式为交互式使用,同时支持脚本方式,完成管理功能自动化。

    脚本内容:

    net stop ntds /y

    ntdsutil"activate instance ntds""info" quit quit

    将脚本内容保存为Dsplay.bat批处理文件,该脚本将显示活动目录数据库信息。

    在命令行提示符下,执行Dsplay.bat批处理文件,第一行代码停止ADDS域服务

    第二行脚本显示活动目录数据库信息。


清理域控制器源数据

    活动目录管理过程红,非正常卸载子域、域控制器以及域控制器或者额外域控制器硬件损坏等突发故障,将在活动目录数据库中留下“垃圾”数据,虽然保留这些信息对整个AD DS域服务没有坏处,但是在站点复制额过程红,将经常出现错误提示,为了避免这种情况发生,建议清楚无效的Active Directory源数据。

    1.清理无效的域控制器数据

    2.注意事项

    在实际操作红,必须先做元数据清理,然后再到相应的管理工具中删除相应的对象。若是直接到管理工具中去删,系统将不允许删除。

    如果清理的是Server对象,源数据清理完成后,需要完成以下操作。

    ·打开“Acitve Directory站点和服务”,展开适当站点,删除相应Server对象。

    ·打开“Active Directory用户和计算机”,打开Domain Controllers组织单位,删除相应的域控制器对象。

    如果清理的是Domain对象,源数据清理完成后,需要完成以下操作。

    ·打开“Acitve Directory域和信任关系”,删除相应的已经无效信任关系。否则该域名将出现登录的域列表中。


备份活动目录数据库

    备份与恢复是保证信息系统安全可靠不可或缺的基础。对信息系统来说,可靠性和可用性是最基本的要求。因此,域管理员要经常备份活动目录数据库,当域控制器出现故障时,确保活动目录数据库的可用性。相比之前的AD DS域服务(Windows Server 2012之前的所有版本),进一步简化了活动目录数据库还原额难度,将“授权还原”和“非授权还原”集成到恢复向导中,通过该向导完成两种模式中域对象的恢复。同时,也支持通过“Ntdsutil”工具还原删除的域对象。


安装Windows Server Backup组件

    Windows Server 2012操作系统安装成后,默认没有安装Windows Server Backup组件,需要管理员通过“服务器管理器”的“添加角色和功能”向导安装该组件。


向导备份活动目录数据库

  1. 向导一次性备份

    在第一次备份Acitve Directory服务器时,建议使用完整备份的方法,在以后备份过程,可以使用增量备份的方法。

    第1步,以域管理员身份登录域控制器,选择“计算机管理”-“存储”-“Windows Server Backup”

    第2步,右侧“操作”面板,单击“一次性备份”,启动“一次性备份向导”,打开“备份选项”对话框。如果是第一次使用一次性备份向导,建议选择“其他选项”单选按钮,为Windows Server 2012创建完整备份。

    第3步,单击“下一步”,打开“选择备份配置”对话框。如果选择“整个服务器(推荐)”,则备份当前服务器所有磁盘;如果选择“自定义”选项,允许管理员定制备份内容。

    第4步,单击“下一步”,“选择要备份的项”,选择自定义选项后,默认没有设置任何需要备份的目标。

    (1)单击“添加项目”按钮,选择需要备份的内容

    (2)单击“确定”,返回到“选择要备份的项”对话框。该对话框中单击“高级设置”。切换到“VSS设置”选项卡,选择“VSS完整备份”选项,设置完成的参数。单击“确定”按钮,返回到“选择要备份的项”对话框。

    第5步,“选择要备份的项”对话框中,单击“下一步”按钮,打开“指定目标类型”对话框。一次性备份向导支持本地和网络UNC模式存储数据,同时支持本地DVD驱动器,可以将备份直接写到DVD备份设置中。

    第6步,单击“下一步”按钮,打开“选择备份目标”对话框。选择用于备份的卷。

    第7步,单击“下一步”,显示备份设置参数。

    第8步,单击“备份”按钮,开始备份Windows Server 2012

    第9步,备份按成后,通过Windows Server Backup控制台查看备份状态。

   

2.向导计划备份

    Windows Server 2012提供计划备份向导,帮助管理员自动完成Acitve Directory数据库的自动备份。

    第1步,打开“计算机管理”,选择“Windows Server Backup”-“本地备份”选项,右侧“操作窗格”中选择“备份计划”选项。命令执行后,启动备份计划向导,显示“开始”对话框。提示管理员在创建备份计划过程中需要注意的问题。

    第2步,单击“下一步”,“选择备份配置”对话框。选择需要备份的设备类型。选择“自定义”选项。

    第3步,单击“下一步”,打开“选择要备份的项”对话框。设置完成的参数。设置过程中选择“高级设置”中的“VSS完整备份”选项。

    第4步,单击“下一步”,显示“指定备份时间”对话框。设置备份计划的执行周期。计划提供每日一次和每日多次两种模式。每日一次每天仅执行一次指定的备份,每日多次在每天的不同时刻执行多次系统备份。

    选择“每日多次”单选按钮,在“可用时间”列表中,选择需要执行备份的时间。单击“添加”按钮,将选择的时间添加到“计划时间”列表中,重复以上操作,设置备份周期。

    第5步,单击“下一步”,显示“指定目标类型”对话框。备份向导提供三种存储机制,本例中选择存储奧本地卷中,选择“备份到卷”选项。

    第6步,单击“下一步”按钮,显示“选择目标卷”对话框。设置存储备份数据的目标磁盘。

    第7步,单击“下一步”按钮,显示“确认”对话框。单击“完成”按钮,创建新的备份计划。


命令行备份活动目录数据库

  1. 命令行一次性备份

    命令行备份为管理员提供灵活的备份模式,同样可以完成系统的备份。

    第1步,在命令行提示符下,

    wbadmin    //显示“wbadmin”命令使用信息。

    第2步,

    Wbadmin get disks    //命令执行后,显示服务器已经连接的磁盘

    第3步,在命令行提示符下,

    Wbadmin Start Backup -backupTarget:e: -include:C:    //命令执行后,提示将磁盘C备份到E盘。键入“Y”,开始备份“C”盘

    第4步,命令行提示符下

    wbadmin get versions    //命令执行后,查看备份信息,包括备份介质中可以恢复的组件。


2.备份系统状态

    ebadmin START SYSTEMSTATEBACKUP -backuptarget:e:    //命令执行后,开始备份系统状态,备份目标为E盘。备份完成后通过:wbadmin ge versions查看备份信息。


恢复活动目录数据库

    Acitve Directory运维过程中,域管理员可能会遇到误删除域对象的错误操作。


域对象删除

  1. 还原过程

    当域对象被删除后,如果网络部署多台域控制器(也是建议的做法),域控制器通过“非权威还原”模式还原后重启,成功启动域控制器后,域控制器之间开始复制。如果执行这个还原过程,域控制器从复制伙伴接收到域对象已被删除的信息,当打开“Acitve Directory用户和计算机”管理控制台时,发现域对象会再次被删除。

    因此,域管理员必须使用权威还原确保被还原的域对象被复制到其他域控制器。执行权威还原时,首先需要还原一个数据还未被删除的Acitve Directory数据库备份版本,然后强制将数据复制到所有其他域控制器。


2.还原机制

    强制复制实际上通过修改域对象的USN完成。默认情形下,如果执行权威还原,还原域对象上USN增加值为“100000”,使还原对象成为整个域的授权版本。在Acitve Directory数据库中,以域对象USN版本作为标志,每修改一次域对象信息,用户的USN属性值增加“1”,。因此执行授权还原操作后,用户USN值一次增加“100000”。微软认为在24小时之内,任何一个域对象的修改频率也不会超过这个数值,因此还原后的域对象将成为该对象的授权版本,因此域控制器之间复制后不会删除刚被还原的域对象。


3.还原可能引发的问题

    权威还原可能破坏域和计算机帐号之间的信任关系。当运行计算机添加到域,客户端计算机额域验证票据被创建,该票据用于维护计算机和域之间的信任关系。默认情形下,该密码每30天变更一次。

    当执行权威还原后,还原备份时使用的信任密码。如果客户端计算机已经更改不同的信任票据,域和成员计算机之间的信任关系就会失效。最简单的处理方法,客户端计算机重新执行降域、加域操作,重建信任票据。


向导还原活动目录数据库

  1. 误删用户

    域中新建名称为“王淑江”的用户,由于误操作删除了该用户,因此域管理员决定使用备份还原该用户。通过命令行删除用户。


2.向导还原

    第1步,进入“目录服务修复”模式。重新启动计算机,在进入Windows Server 2012的初始窗口前,按F8键进入“高级启动选项”菜单界面。通过键盘上的方向键选择“目录服务修复模式”选项。

    第2步,加载操作系统文件,出现Windows Server 2012登录窗口,在“用户名”文本框中,键入“.\Administrator”登录到本机,在“密码”文本框中,键入目录还原模式密码。

    第3步,启动完成,Windows Server 2012系统处于安全模式。

    第4步,选择“计算机管理”-“存储”-“Windows Server Backup”-“本地备份”选项。

    第5步,窗口右侧“操作”面板中,单击“恢复”超链接,启动“恢复向导”,显示“开始”对话框。选择需要存储备份的目标服务器。

    第6步,单击“下一步”按钮,显示“选择备份日期”对话框,对话框右侧显示所有可用的备份,根据需要选择备份内容以及备份时间。注意,备份状态一定为“联机时可用”。

    第7步,单击“下一步”按钮,显示“选择恢复类型”对话框,恢复向导提供“文件和文件夹”、“卷”、“应用恢复”以及“系统状态”选项。本例中需要恢复已经删除的用户,选择“系统状态”选项。

    第8步,单击“下一步”按钮,显示“选择系统状态恢复的位置”对话框。

    ·授权还原。管理Acitve Directory时,管理员可能不小心错误地删除了一个不应该删除的用户或者组,如果使用同样的用户名称添加一个同名的用户,则以前的账户信息和其他的文件所有权信息会全部丢失,同时会禁止访问某些网络资源。删除用户之后,没有真正删除用户,仅是将用户作了标记,称之为“墓碑生存记录”。只有时间超过墓碑指定的时间以后,才会真正删除作了标记的用户。在默认情况下,还原Acitve Directory数据库的模式为非授权还原,使用此方式还原Acitve Directory后,将从其他的域控制器中同步复制数据库。同步完成后,管理员会发现已经删除的用户没有被正常恢复,因为此用户的“墓碑记录”从其他服务器上被复制成功。当遇到这种情况的时候,可以使用Acitve Directory备份恢复没有删除用户的数据库,然后使用“授权还原”的方法禁止域中的其他域控制器复制同步Acitve Directory数据库,也就是说在网络中发布一个通告,新域控制器的数据是最高标准,其他所有域控制器都要以该域控制器为准,这样其他域控制器将不会将新的数据同步到该域控制器中。

    ·非授权还原。域中的DC域控制器随时随地都在同步,保障所有域控制器中的数据都是最新的,一旦一台域控制器中产生新的数据,这个变化就会同步到域中其他所有域控制器中。在网络中可能遇到这种情况,域控制器坏了,或者想要重新安装域控制器,可以先安装操作系统,然后恢复之前备份的数据库。恢复完成后,将自动和域中的其他域控制器同步,如果新域控制器的数据比较旧,其他域控制器自动将数据复制到新域控制器中,这种“自然”恢复,称之为“非授权还原”。

    该对话框中,如果选择“对Acitve Directory文件执行授权还原”则执行授权还原操作,否则执行的是“非授权还原”。

    第9步,单击“下一步”。提醒域管理员注意执行该操作,域控制器之间要执行同步操作。

    第10步,单击“确定”,显示“确认”对话框。显示设置的恢复信息

    第11步,单击“恢复”。提示域管理员重新启动服务器后才能完成系统状态恢复。

    第12步,单击“是”,开始恢复系统状态。

    第13步,恢复完成后,提示管理员需要重新启动目标计算机。单击“重新启动”按钮,重新启动计算机完成域对象恢复。


命令行还原活动目录数据库

  1. 命令行非权威还原

    非权威还原必须在“目录服务修复”模式中进行,以本地管理员身份登录域控制器。

    第1步,命令行提示符下

    wbadmin get versions    //显示Acitve Directory数据库(系统状态)备份列表,注意每次备份中版本标识符。

    第2步,在命令提示符下

    WBADMIN START SYSTEMSSTATERECOVERY -version:07/08/2013-03:01    //命令执行后,提示管理员是否要执行系统状态恢复。

    键入“Y”后,开始执行恢复操作

    第3步,还原完成。按照提示键入“Y”,重新启动服务器。

    第4步,服务器重新启动后,以域管理员身份登录域控制器。回车后完成Acitve Directory数据库还原。


2.权威还原

    管理员在维护Acitve Directory用户时,删除组织单位“demo”中的用户“test”,本例以“权威还原”模式恢复该用户。还原过程分为2个环节。

    ·首先执行非权威还原

    ·然后执行权威还原

    (1)非权威还原

    非权威还原执行过程同“命令行非权威还原”。非权威还原执行完成后,不要重新启动服务器。继续以下操作。

    (2)权威还原

    第1步,在命令提示符ixa

    C:\>ntdsutil

    ntdsutil :Activate Instance NTDS

    ntdsutil :Authoritative restore

    Authoritative restore :Restore object CN-test,OU=demo,DC=book,DC=com

    命令执行后,显示“授权还原确认”对话框

    第2步,单击“是”,开始执行恢复过程。目标域对象的属性值增加了“100000”,域对象被成功恢复,可以通过日志文件查看。

    第3步,退出“ntdsutil”工具,打开生成的日志文件,显示处理的Acitve Directory对象。


3.查看与对象的USN

    删除的域对象恢复后,用户USN的属性值增加“100000”,通过“repadmin”命令查看当前用户的USN值。在命令行提示符,键入

    Repadmin /showmeta CN=test,OU=demo,DC=book,DC=com    //显示用户的USN值


通过备份还原域控制器

    域控制器的完全恢复也是一种活动目录非授权还原,还原过程同时也包括了操作系统和其他数据的完全还原。该方法适用于磁盘分区损坏或者操作系统故障,前提是必须有一个完整的服务器备份。完全恢复过程中服务器操作系统不能运行,需要使用“Windows RE”执行还原过程,建议使用Windows Server 2012 DVD安装介质中搭配的Windows 恢复环境(Windows RE),完成域控制器的恢复。


备份域控制器

    备份过程中需要选择“裸机恢复”、“系统保留”、“系统状态”选项。

    成功备份后的信息。


还原域控制器

    第1步,通过DVD光盘驱动器引导安装Windows Server 2012,启动“Windows 安装程序”,设置语言、时间、键盘等信息

    第2步,单击“下一步”,选择“修复计算机”

    第3步,命令执行后,打开“选择一个选项”窗口,选择“疑难解答”选项

    第4步,命令执行后,显示“高级选项”窗口,选择“系统映像恢复”选项。

    第5步,命令执行后,选择“系统映像恢复”窗口,选择目标操作系统是Windows Server 2012

    第6步,命令执行后,启动“对计算机进行重定向”向导,显示所示“选择系统镜像备份”对话框。向导默认选择“使用最新额可用系统镜像”,并在“位置”、“日期和时间”、“计算机”中显示备份相关信息。

    第7步,单击“下一步”,显示“选择其他的还原方式”对话框。该对话框中设置当前计算机中的系统分区。

    “选择其他的还原方式”对话框中选择“格式化并重新分区磁盘”选项后,单击“排除磁盘”按钮,打开磁盘选择对话框,本例中备份存储在服务器的第二块磁盘中,并且默认排除包含备份的磁盘。选择“磁盘”列表中的磁盘后,重镜像向导将不会对目标磁盘进行重新分区操作。

    “选择其他的还原方式”对话框中选择“高级”选项后,选择还原后的操作以及磁盘出现错误的处理方法。

    第8步,“选择其他的还原方式”对话框中的参数设置完成后,单击“下一步”按钮。提示管理员将从以下镜像中恢复服务器。

    第9步,单击“完成”按钮,提醒管理员要对选择的目标磁盘进行分区并格式化。

    第10步,单击“是”,开始还原服务器

    还原完成后,提醒管理员还原操作已经完成,需要重新启动服务器。重启后完成域控制器恢复。