Windows Server 2008'de komutu çalıştırdığınızda Adprep /rodcprep
hata: Adprep, DC=DomainDnsZones,DC=Contoso,DC=com bölümü için bir çoğaltmayla iletişim kuramadı
Bu makalede, bir veya daha fazla Active Directory NDNC'sinin Adprep /rodcprep
altyapı yöneticisine erişilemediğinden komutun başarıyla tamamlanamadığı bir sorun çözülmektedir.
Şunlar için geçerlidir: Windows Server 2012 R2
Özgün KB numarası: 949257
Belirtiler
Windows Server 2008'de komutunu çalıştırdığınızda Adprep /rodcprep
aşağıdaki hata iletisini alırsınız:
Adprep, DC=DomainDnsZones,DC=Contoso,DC=com bölümü için çoğaltmayla iletişim kuramadı
Adprep, DC=DomainDnsZones,DC=Contoso,DC=com bölümü sonraki bölüme atlanırken işlemi başarısız oldu.
Adprep, DC=ForestDnsZones,DC=Contoso,DC=com bölümü için bir çoğaltmayla iletişim kuramadı
Adprep bir LDAP hatasıyla karşılaştı. Hata kodu: 0x0. Sunucu genişletilmiş hata kodu: 0x0, Sunucu hata iletisi: (null).
Adprep, DC=ForestDnsZones,DC=Contoso,DC=com bölümü sonraki bölüme atlanıyor bölümünde işlemi başarısız oldu.
Adprep hatalarla tamamlandı. Tüm bölümler güncelleştirilmez.
Neden
Bu sorun, komut ormandaki Adprep /rodcprep
her uygulama bölümü için altyapı yöneticisine başvurmaya çalıştığında oluşur. komutu, Read-Only Etki Alanı Denetleyicisi (RODC) çoğaltması için gereken izinleri ayarlamak için bunu yapar. Adprep /rodcprep
Aşağıdaki koşullardan biri doğruysa komut başarısız olur:
- Hata iletisinde başvuruda bulunılan bölüm veya bölümler artık yok.
- Başvuruda bulunılan bölüm veya bölümler için altyapı yöneticisi zorla indirgenmiş veya çevrimdışı.
Çözüm
Bölüm artık yoksa bu sorunu çözmek için, Dsmgmt aracının "remove nc" parametresini kullanarak yalnız bırakılmış bölüm için bir meta veri temizleme işlemi yapın. Daha fazla bilgi için aşağıdaki Microsoft Web sitesini ziyaret edin:
Belirtilen bölüm varsa, bölüm için çevrimiçi olan bir altyapı rolü sahibi belirtin. Bunu, "Daha fazla bilgi" bölümünde açıklandığı gibi nesnedeki fSMORoleOwner özniteliğini el ile değiştirerek yapabilirsiniz.
Daha fazla bilgi
Aşağıdaki betik örneği, belirtilen Etki Alanı Dışı Adlandırma Bağlamı'nın (NDNC) altyapı nesnesinde fSMORoleOwner özniteliğini etkin veya bağlantı kurulabilir bir sunucu olarak değiştirir. Bu örnekteki NDNC , DomainDnsZones,DC=contoso,DC=com NDNC adlandırma bağlamıdır. Betik aşağıdaki komutu kullanır:
cscript fixfsmo.vbs DC=DomainDnsZones,DC=contoso,DC=com
'-------fixfsmo.vbs------------------
const ADS_NAME_INITTYPE_GC = 3
const ADS_NAME_TYPE_1779 = 1
const ADS_NAME_TYPE_CANONICAL = 2
set inArgs = WScript.Arguments
if (inArgs.Count = 1) then
' Assume the command line argument is the NDNC (in DN form) to use.
NdncDN = inArgs(0)
Else
Wscript.StdOut.Write "usage: cscript fixfsmo.vbs NdncDN"
End if
if (NdncDN <> "") then
' Convert the DN form of the NDNC into DNS dotted form.
Set objTranslator = CreateObject("NameTranslate")
objTranslator.Init ADS_NAME_INITTYPE_GC, ""
objTranslator.Set ADS_NAME_TYPE_1779, NdncDN
strDomainDNS = objTranslator.Get(ADS_NAME_TYPE_CANONICAL)
strDomainDNS = Left(strDomainDNS, len(strDomainDNS)-1)
Wscript.Echo "DNS name: " & strDomainDNS
' Find a domain controller that hosts this NDNC and that is online.
set objRootDSE = GetObject("LDAP://" & strDomainDNS & "/RootDSE")
strDnsHostName = objRootDSE.Get("dnsHostName")
strDsServiceName = objRootDSE.Get("dsServiceName")
Wscript.Echo "Using DC " & strDnsHostName
' Get the current infrastructure fsmo.
strInfraDN = "CN=Infrastructure," & NdncDN
set objInfra = GetObject("LDAP://" & strInfraDN)
Wscript.Echo "infra fsmo is " & objInfra.fsmoroleowner
' If the current fsmo holder is deleted, set the fsmo holder to this domain controller.
if (InStr(objInfra.fsmoroleowner, "\0ADEL:") > 0) then
' Set the fsmo holder to this domain controller.
objInfra.Put "fSMORoleOwner", strDsServiceName
objInfra.SetInfo
' Read the fsmo holder back.
set objInfra = GetObject("LDAP://" & strInfraDN)
Wscript.Echo "infra fsmo changed to:" & objInfra.fsmoroleowner
End if
End if
Bir bölümün altyapı yöneticisini belirlemek için, söz konusu adlandırma bağlamı kökü altındaki altyapı nesnesindeki fSMORoleOwner özniteliğini sorgulayın. Örneğin, CN=Infrastructure,DC=DomainDnsZones,DC=contoso,DC=com adlandırma bağlamı kökünde fSMORoleOwner özniteliğini sorgulayın ve DC=DomainDnsZones,DC=contoso,DC=com bölümünün altyapı yöneticisini belirleyin. Benzer şekilde, D C=ForestDnsZones,DC=contoso,DC=com bölümünün altyapı yöneticisini belirlemek için CN=Infrastructure,DC=ForestDnsZones,DC=contoso,DC=com adlandırma bağlamı kökünde fSMORoleOwnerözniteliğini sorgulayın.
Bu sorguları yapmak için LDP aracı, Active Directory Hizmet Arabirimleri (ADSI) Düzenleme aracı ve ldifde aracı gibi araçları kullanabilirsiniz. Örneğin, aşağıdaki sorgu Idifde aracını kullanır:
ldifde -f Infra_DomainDNSZones.ldf -d "CN=Infrastructure,DC=DomainDnsZones,DC=contoso,DC=com" -l fSMORoleOwner
Bu sorgu , Infra_DomainDNSZones.ldf dosyasına DC=DomainDnsZones,DC=contoso,DC=com bölümü için altyapı yöneticisi rolü sahibini döndürür.
Not
Ormana Adprep /rodcprep
zarar vermeden komutu birden çok kez çalıştırabilirsiniz. Rodcprep komutunun önceki yürütmelerinde tamamlanan işlemler yinelenmez.
Komutunu yalıtılmış bir ortamda çalıştırmaya rodcprep
çalışırsanız, işlemin başarılı olması için her etki alanı ve her uygulama dizini bölümü için altyapı yöneticisinin ortamda kullanılabilir olması gerekir.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin