多域控制器环境下Active Directory灾难恢复
c:>ntdsutil ntdsutil: metadata cleanup metadata cleanup: select operation target select operation target: connections server connections: connect to domain test.com select operation target: list sites Found 1 site(s) 0 - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=com select operation target: select site 0 Site - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=com No current domain No current server No current Naming Context select operation target: List domains in site Found 1 domain(s) 0 - DC=test,DC=com Found 1 domain(s) 0 - DC=test,DC=com select operation target: select domain 0 Site - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=com Domain - DC=test,DC=com No current server No current Naming Context select operation target: List servers for domain in site Found 2 server(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 select operation target: select server 0 select operation target: quit metadata cleanup:Remove selected server 出现对话框,按“确定“删除DC-01主控服务器。 metadata cleanup:quit ntdsutil: quit
c:>ntdsutil ntdsutil: roles fsmo maintenance: Select operation target select operation target: connections server connections: connect to domain test.com select operation target: list sites Found 1 site(s) 0 - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=com select operation target: select site 0 Site - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=com No current domain No current server No current Naming Context select operation target: List domains in site Found 1 domain(s) 0 - DC=test,DC=com select operation target: select domain 0 Site - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=com Domain - DC=test,DC=com No current server No current Naming Context select operation target: List servers for domain in site Found 1 server(s) 0 - CN=DC-02,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=te st,DC=com select operation target: select server 0 select operation target: quit fsmo maintenance:Seize domain naming master 出现对话框,按“确定“ fsmo maintenance:Seize infrastructure master 出现对话框,按“确定“ fsmo maintenance:Seize PDC 出现对话框,按“确定“ fsmo maintenance:Seize RID master 出现对话框,按“确定“ fsmo maintenance:Seize schema master 出现对话框,按“确定“ fsmo maintenance:quit ntdsutil: quit (注:Seize是在原FSMO不在线时进行操作,如果原FSMO在线,需要使用Transfer操作)
Set objRootDSE = GetObject("LDAP://rootDSE") Dim text ' Schema Master Set objSchema = GetObject("LDAP://" & objRootDSE.Get("schemaNamingContext")) strSchemaMaster = objSchema.Get("fSMORoleOwner") Set objNtds = GetObject("LDAP://" & strSchemaMaster) Set objComputer = GetObject(objNtds.Parent) text="Forest-wide Schema Master FSMO: " & objComputer.Name & vbCrLf Set objNtds = Nothing Set objComputer = Nothing ' Domain Naming Master Set objPartitions = GetObject("LDAP://CN=Partitions," & _ objRootDSE.Get("configurationNamingContext")) strDomainNamingMaster = objPartitions.Get("fSMORoleOwner") Set objNtds = GetObject("LDAP://" & strDomainNamingMaster) Set objComputer = GetObject(objNtds.Parent) text=text&"Forest-wide Domain Naming Master FSMO: " & objComputer.Name & vbCrLf Set objNtds = Nothing Set objComputer = Nothing ' PDC Emulator Set objDomain = GetObject("LDAP://" & objRootDSE.Get("defaultNamingContext")) strPdcEmulator = objDomain.Get("fSMORoleOwner") Set objNtds = GetObject("LDAP://" & strPdcEmulator) Set objComputer = GetObject(objNtds.Parent) text=text&"Domain's PDC Emulator FSMO: " & objComputer.Name & vbCrLf Set objNtds = Nothing Set objComputer = Nothing ' RID Master Set objRidManager = GetObject("LDAP://CN=RID Manager$,CN=System," & _ objRootDSE.Get("defaultNamingContext")) strRidMaster = objRidManager.Get("fSMORoleOwner") Set objNtds = GetObject("LDAP://" & strRidMaster) Set objComputer = GetObject(objNtds.Parent) text=text&"Domain's RID Master FSMO: " & objComputer.Name & vbCrLf Set objNtds = Nothing Set objComputer = Nothing ' Infrastructure Master Set objInfrastructure = GetObject("LDAP://CN=Infrastructure," & _ objRootDSE.Get("defaultNamingContext")) strInfrastructureMaster = objInfrastructure.Get("fSMORoleOwner") Set objNtds = GetObject("LDAP://" & strInfrastructureMaster) Set objComputer = GetObject(objNtds.Parent) text=text&"Domain's Infrastructure Master FSMO: " & objComputer.Name & vbCrLf text=text & vbCrLf &" Design by coolnetboy([email protected])" WScript.Echo text