记录:多域控制器环境下Active Directory灾难恢复
准备新装个VPC将PDC转移过来,发现从2000开始到2003升级都不是那么的容易,记得当时NT时代只需要鼠标操作就可以将BDC取代PDC但是现在看来是不行了,好不容易找到了一片文章,这里总结一下如果在PDC离线和在线状态下迁移 文章如下多域控制器环境下ActiveDirectory灾难恢复 -------------------------------------------------------------------------------- 摘要 本文讲述了在多域控制器环境下,主域控制器由于硬件故障突然损坏,而又事先又没有做好备份,如何使额外域控制器接替它的工作,使ActiveDirectory正常运行,并在硬件修理好之后,如何使损坏的主域控制器恢复。 -------------------------------------------------------------------------------- 目录 ActiveDirectory操作主机角色概述 环境分析 从AD中清除主域控制器DC-01.test.com对象 在额外域控制器上通过ntdsutil.exe工具执行夺取五种FMSO操作 设置额外域控制器为GC(全局编录) 重新安装并恢复损坏主域控制器 附:用于检测AD中五种操作主机角色的脚本 -------------------------------------------------------------------------------- 一、ActiveDirectory操作主机角色概述 ActiveDirectory定义了五种操作主机角色(又称FSMO): 架构主机schemamaster、 域命名主机domainnamingmaster 相对标识号(RID)主机RIDmaster 主域控制器模拟器(PDCE) 基础结构主机infrastructuremaster 而每种操作主机角色负担不同的工作,具有不同的功能: 架构主机 具有架构主机角色的DC是可以更新目录架构的唯一DC。这些架构更新会从架构主机复制到目录林中的所有其它域控制器中。架构主机是基于目录林的,整个目录林中只有一个架构主机。 域命名主机 具有域命名主机角色的DC是可以执行以下任务的唯一DC: 向目录林中添加新域。 从目录林中删除现有的域。 添加或删除描述外部目录的交叉引用对象。 相对标识号(RID)主机 此操作主机负责向其它DC分配RID池。只有一个服务器执行此任务。在创建安全主体(例如用户、 组或计算机)时,需要将RID与域范围内的标识符相结合,以创建唯一的安全标识符(SID)。每一个 Windows2000DC都会收到用于创建对象的RID池(默认为512)。RID主机通过分配不同的池来确保这 些ID在每一个DC上都是唯一的。通过RID主机,还可以在同一目录林中的不同域之间移动所有对象。 域命名主机是基于目录林的,整个目录林中只有一个域命名主机。相对标识号(RID)主机是基于域的,目录林中的每个域都有自己的相对标识号(RID)主机 PDCE 主域控制器模拟器提供以下主要功能: 向后兼容低级客户端和服务器,允许WindowsNT4.0备份域控制器(BDC)加入到新的Windows2000环境。本机Windows2000环境将密码更改转发到PDCE。每当DC验证密码失败后,它会与PDCE取得联系,以查看该密码是否可以在那里得到验证,也许其原因在于密码更改还没有被复制到验证DC中。 时间同步—目录林中各个域的PDCE都会与目录林的根域中的PDCE进行同步。 PDCE是基于域的,目录林中的每个域都有自己的PDCE。 基础结构主机 基础结构主机确保所有域间操作对象的一致性。当引用另一个域中的对象时,此引用包含该对象的 全局唯一标识符(GUID)、安全标识符(SID)和可分辨的名称(DN)。如果被引用的对象移动,则在域中担 当结构主机角色的DC会负责更新该域中跨域对象引用中的SID和DN。 基础结构主机是基于域的,目录林中的每个域都有自己的基础结构主机 默认,这五种FMSO存在于目录林根域的第一台DC(主域控制器)上,而子域中的相对标识号(RID)主机、PDCE、基础结构主机存在于子域中的第一台DC。 -------------------------------------------------------------------------------- 二、环境分析 公司Test.com(虚拟)有一台主域控制器DC-01.test.com,还有一台额外域控制器DC-02.test.com。现主域控制器(DC-01.test.com)由于硬件故障突然损坏,事先又没有DC-01.test.com的系统状态备份,没办法通过备份修复主域控制器(DC-01.test.com),我们怎么让额外域控制器(DC-02.test.com)替代主域控制器,使AcitvieDirectory继续正常运行,并在损坏的主域控制器硬件修理好之后,如何使损坏的主域控制器恢复。 如果你的第一台DC坏了,还有额外域控制器正常,需要在一台额外域控制器上夺取这五种FMSO,并需要把额外域控制器设置为GC。 -------------------------------------------------------------------------------- 三、从AD中清除主域控制器DC-01.test.com对象 3.1在额外域控制器(DC-02.test.com)上通过ntdsutil.exe工具把主域控制器(DC-01.test.com)从AD中删除; c:>ntdsutil ntdsutil:metadatacleanup metadatacleanup:selectoperationtarget selectoperationtarget:connections serverconnections:connecttodomaintest.com selectoperationtarget:listsites Found1site(s) 0-CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=com selectoperationtarget:selectsite0 Site-CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=com Nocurrentdomain Nocurrentserver NocurrentNamingContext selectoperationtarget:Listdomainsinsite Found1domain(s) 0-DC=test,DC=com Found1domain(s) 0-DC=test,DC=com selectoperationtarget:selectdomain0 Site-CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=com Domain-DC=test,DC=com Nocurrentserver NocurrentNamingContext selectoperationtarget:Listserversfordomaininsite Found2server(s) 0-CN=DC-01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=te st,DC=com 1-CN=DC-02,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=te st,DC=com selectoperationtarget:selectserver0 selectoperationtarget:quit metadatacleanup:Removeselectedserver 出现对话框,按“确定“删除DC-01主控服务器。 metadatacleanup:quit ntdsutil:quit 3.2使用ADSIEDIT工具删除ActiveDirectoryusersandcomputers中的Domaincontrollers中DC-01服务器对象, ADSIEDIT是Windows2000supporttools中的工具,你需要安装Windows2000supporttool,安装程序在windows2000光盘中的support\tools目录下。打开ADSIEDIT工具,展开DomainNC[DC-02.test.com],展开OU=Domaincontrollers,右击CN=DC-01,然后选择Delete,把DC-01服务器对象删除,如图1: 3.3在ActiveDirectorySitesandService中删除DC-01服务器对象 打开Administrativetools中的ActiveDirectorySitesandService,展开Sites,展开Default-First-Site-Name,展开Servers,右击DC-01,选择Delete,单击Yes按钮,如图2: -------------------------------------------------------------------------------- 四、在额外域控制器上通过ntdsutil.exe工具执行夺取五种FMSO操作 c:>ntdsutil ntdsutil:roles fsmomaintenance:Selectoperationtarget selectoperationtarget:connections serverconnections:connecttodomaintest.com selectoperationtarget:listsites Found1site(s) 0-CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=com selectoperationtarget:selectsite0 Site-CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=com Nocurrentdomain Nocurrentserver NocurrentNamingContext selectoperationtarget:Listdomainsinsite Found1domain(s) 0-DC=test,DC=com selectoperationtarget:selectdomain0 Site-CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=com Domain-DC=test,DC=com Nocurrentserver NocurrentNamingContext selectoperationtarget:Listserversfordomaininsite Found1server(s) 0-CN=DC-02,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=te st,DC=com selectoperationtarget:selectserver0 selectoperationtarget:quit fsmomaintenance:Seizedomainnamingmaster 出现对话框,按“确定“ fsmomaintenance:Seizeinfrastructuremaster 出现对话框,按“确定“ fsmomaintenance:SeizePDC 出现对话框,按“确定“ fsmomaintenance:SeizeRIDmaster 出现对话框,按“确定“ fsmomaintenance:Seizeschemamaster 出现对话框,按“确定“ fsmomaintenance:quit ntdsutil:quit (注: Seize是在原FSMO不在线时进行操作,如果原FSMO在线,需要使用Transfer操作) -------------------------------------------------------------------------------- 五、设置额外控制(DC-02.test.com)为GC(全局编录) 打开AdministrativeTools中的ActiveDirectorySitesandServices,展开Sites,展开Default-First-Site-Name,展开Servers,展开DC-02.test.com(额外控制器),右击NTDSSettings选择Properties,然后在"GlobalCatalog"前面打勾,单击"确定"按钮,然后重新启动服务器。 六、重新安装并恢复损坏主域控制器 修理好DC-01.test.com损坏的硬件之后,在DC-01.test.com服务器重新安装Windows2000Server,安装好Windows2000Server之后,再运行Dcpromo升成额外的域控制器;如果你需要使DC-01.test.com担任五种FMSO角色,通过ntdsutil工具进行角色转换,进行Transfer操作就行了(注意:不能用Seize)。并通过ActiveDirectorySitesandServices设置DC-01.test.com为GC, 取消DC-02.test.com的GC功能。 注:如果PDC在线状态,那么只需要把第四部中的Seize更换为Transfer 本文转自 苏繁 51CTO博客,原文链接:http://blog.51cto.com/goxia/222141,如需转载请自行联系原作者