强制删除多余的域控制器
(2016-07-05 15:25:55)强制删除多余的域控制器
很多企业都碰到过这样的问题:AD域中的某台域控制器由于软件或硬件问题而瘫痪,无法启动。这时,如果想重新安装这台服务器,就需要先将它从域中删除。但是,由于该服务器已经不能启动,所以无法使用Dcromo进行删除。
如果简单地从“AD用户和计算机”中删除该域控制器的话,它的信息依然会保留在AD数据库中,客户机和其他域控制器仍然会频繁访问这台已不存在的域控制器,这会给AD的功能和性能带来很大影响。
本文针对这种问题提出了一套完整的解决方案,在利用Ntdsutil工具强制删除或控制器的同时,保证了整个AD域的功能不受到任何影响。
例如,企业AD中的一台Windows Server2003
域控制器(DC1),由于硬件问题而瘫痪,无法启动。企业希望将DC1从域中删除。在强制删除DC1前,我们需要提前考虑以下问题:
1.如果删除的DC是企业当前的一台和AD集成的DNS服务器,要考虑是否需要将DNS服务器,要考虑是否需要将DNS记录迁移到其他DNS服务器上。如果进行了迁移,则需要更新所有成员工作站、成员服务器以及其他可能使用过这台DNS服务器进行名称解析的DC上的DNS客户端配置。
2.如果删除的域控制器是一台全局编录服务器,要考虑是否全局编录迁移到其他DC上。
3.如果删除的DC曾经担任Flexible Single Master Operation (FSMO)角色,要将这些角色重新分配给一台活动的DC。
经过系统分析,发现系统当前状况如下:
1.除当前瘫痪的域控制器DC1以外,域中还存在另一台域控制器BAKSRV。
2.DC1担任着域中的所有五个FSMO角色。
3.DC1是域中的惟一的一台全局编录服务器。
4.DC1是域中的惟一的一台DNS服务器,拥有“和AD集成的DNS区域”coact.com.
5.BAKSRV充当着企业的DHCP服务器,客户端的IP地址、网关、DNS服务器设置均由BAKSRV分发。
对系统进行分析评估之后,在删除DC1之前,必须使BAKSRV担负起DC1以前所担负的所有角色,否则将会造成用户无法登录域,网络资源不可访问等多个严重问题。
根据以往经验,整个灾难恢复过程应该包括:重建全局编录、重建DNS服务器、抢占FSMO角色、删除DC1以及重新配置DHCP进行地址分发五个主要步骤。
重建全局编录
全局编录是存储林中所有Active Directory对象副本的域控制器,全局编录中包含的所有域对象的部分副本是用户搜索操作中最常用的部分。在林中必须存在一个全局编录服务器,所以,需要在BAKSRV上重建全局编录。
1.BAKSRV上,启动“Active Directory站点和服务”管理单元。
2.在控制台树中,双击“站点”,然后双击站点名称。
3.双击“服务器”,单击BAKSRV,右键单击“FTDS设置”,然后单击“属性”。
4.如图1所示,在“常规”选项卡上,单击“全局编录”复选框,将其选中,将全局编录角色分配给该服务器。
5.等待一段时间后,在运行上运行Netstat-an ︳find“3268”以及Netstat an ︳find “3269”查看3268、3269端口是否打开。如果这两个端口打开,说明BAKSRV上的全局编录在工作。
我们也可以查看注册表HKEY——LOCAL——MACHINE、SYSTEM、CurrentContro1 Set\Services\NTDS\Parameters\Global Catalog Promotion Complete键值是否为1。如果是1的话,也说明BAKSRV上的全局编录在正常工作了。
重建DNS服务器
DNS是访问AD数据库和服务的基础,所以必须在BAKSRV上重建“和AD集成的DNS区域” Coact.com,使其成为新的DNS服务器。
1.在BAKSRV上安装DNS服务。
2.将BAKSRV网络设置中的DNS服务器设定为BAKSRV本身。
3.打开BAKSRV上的DNS创建“和AD集成的DNS区域”coact.com,并重新加载该区域。
4.在coact.com区域中删除区域_msdcs区域。
HKEY_LOCAL_MACHINE\SYSTEM\Current Control Set\Services\
NTDS\Parameters\Global Catalog Promotion Complete键值是否为1。如果是1的话,也说明BAKSRV上的全局编录在正常工作了。
5.创建“和AD集成的DNS区域”_msdcs.coat.com,并重新加载该区域。
6.在coact.com区域中新建委派区域,委派的域为_msdcs.coact.com,名称服务器为BAKSRV.coact.com。
7.等待一段时间,查看DNS区域中的所有记录是否都成功恢复。
抢占FSMO角色
由于DC1已经瘫痪无法通信,所以我们不可能将FSMO角色正常地从DC1上转移到BAKSRV上,必须强行抢占FSMO角色。
这里我们需要使用Ntdsutil实用工具捕获FSMO角色。
1.登录到BAKSRV上,单击“开始
2.键入roles,然后按Enter。
3.键入connections,然后按Enter。
4.键入connect to server BAKSRV,然后按Enter。
5.在“server connections”提示符处,键入q,然后按Enter。
6.键入seize role,其中role是您要捕获的角色。例如,要捕获RID主机角色,可键入seize rid master。PDC模拟器角色的捕获是一个例外,它的语法是seize pdc而非seize pdc emulator。
7.在“fsmo maintenance”提示符入,键入q,然后按Enter,以进入“ntdsutil”提示符。键入q,然后按Enter,退出Ntdsutil实用工具。
角色抢占完之后,可以利用Windows2003支持工具包中的Netdom工具,来查看FSMO角色是否抢占成功,命令为:Netdom query fsmo/domain:coact.com。如果抢占成功,显示结果应如图2所示。
删除域控制器
在完成上面的一系列工作之后,我们就可以利用Ntdsutil实用工具来从AD数据库中删除DC1的数据。主要步骤如下:
1.在命令提示符处,键入ntdsutil然后按Enter键。
2.键入metadata cleanup,然后按Enter键。
3.键入connections,然后按Enter键。
4.键入connect to server BAKSRV,然后按Enter键。出现一条确认消息,说明已成功建立该连接。
5.键入quit,然后按Enter键。
6.键入select operation target,然后按Enter键。
7.键入list domains,然后按Enter键。将显示一个列出目录林中所有域的列表,每一个域都有一个关联的编号。这里因为只有一个域coact.com,所以只有一个编号0。
8.键入select domain number,然后按Enter键。其中number是要删除服务器所在域的编号,这里number为0。出现一条确认消息,其中列出了所选的域。
9.键入list sites,然后按Enter键。将显示一个站点列表,每个站点都有一个关联的编号。因为只有一个站点Default-First-site-Name,所以只有一个编号0。
10.键入select site number,然后按Enter键。其中number是要删除服务器所在站点的编号。这里number 为0。将出现一条确认消息,其中列出了所选的站点和域。
11.键入list servers in site,然后按Enter键。将显示一个列出站点中所有服务器的列表,每个服务器都有一个关联的编号。在这里DC1编号为0,BAKSRV编号为1。
12.键入select server number,其中number是与要删除的服务器即DC1的编号,所以number为0。然后,将出现一条确认消息,其中列出所选的服务器、该服务器的DNS名,以及服务器的计算机账户的位置。
13.键入quit,然后按Enter键。
14.键入remove selected server,然后按Enter键。将出现一条确认消息,说明删除成功完成。
15.在每个菜单中键入quit,退出Ntdsutil实用工具。
当利用Ntdsutil实和工具成功清除DC1后,我们还需要在“Active Directory用户和计算机”和“Active Directory站点和服务”中删除服务器DC1。另外,还需要在DNS的_msdcs.coact.com区域及coact.com区域中删除DC1的相关记录。由于操作比较简单,这里就不再赘述。
总结
成功删除DC1之后,将所有客户机的网络配置中的DNS服务器一项设为BAKSRV。如果个别客户机启动后没有通过DHCP服务成功刷DNS服务器地址,可以在客户机上运行ipconfig/release和ipconfig/release来进行强制刷新。
-----------++++++++++++++++-----------------------------------------------------
岳雷老师图文教程:
http://yuelei.blog.51cto.com/202879/142553/
----------------------------------++++++++++++++++++---------------------------
有时候对dc降域失败后可以用下面的方法强制删除dc
ntdsutil: metadata cleanup
metadata cleanup: connections
server connections: connect to server dc1 (dc1是一个域控制器)
绑定到 dc1 用本登录的用户的凭证连接 dc1
server connections: quit
metadata cleanup: select operation target
select operation target: list domains
select operation target: select domain 0
select operation target: list sites
select operation target: select site 3
select operation target: list servers in site
select operation target: select server 2
select operation target: quit
metadata cleanup: remove selected server
metadata cleanup: quit ntdsutil:quit 然后删除dns,站点复制以及域中关于被删除dc的所有信息。然后连接到其他dc重复上面的操作。