今天在看AD2003迁移到2008,在查看五个角色之时,发现用:netdom query /d: si.com fsmo   谁知道这条命令在AD2003上不能用,伤心啊,刚接触AD这一块,嘿嘿

在自己好友发现一条基于VBS脚本可以达到我想要的功能:

 

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 &"

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 Johnsonxiang(hubuxcg@msn.com)"
WScript.Echo text
Design by Johnsonxiang(
hubuxcg@msn.com)"
WScript.Echo text

当我们把这个脚本实现后: