Mensagem de erro quando executa o comando "O Adprep /rodcprep" no Windows Server 2008: "o Adprep não conseguiu contactar uma réplica de partição DC = DomainDnsZones, DC = Contoso, DC = com"

Traduções de Artigos Traduções de Artigos
Artigo: 949257 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Sintomas

Quando executar o comando Adprep /rodcprep no Windows Server 2008, receberá a seguinte mensagem de erro:
O Adprep não conseguiu contactar uma réplica de partição DC = DomainDnsZones, DC = Contoso, DC = com
O Adprep falhou a operação de partição DC = DomainDnsZones, DC = Contoso, DC = com a ignorar a partição seguinte.

O Adprep não conseguiu contactar uma réplica de partição DC = ForestDnsZones, DC = Contoso, DC = com
O Adprep encontrou um erro LDAP. Código de erro: 0 x 0. Servidor expandido o código de erro: 0 x 0 mensagem de erro de servidor: (nulo).

O Adprep falhou a operação de partição DC = ForestDnsZones, DC = Contoso, DC = com a ignorar a partição seguinte.
Adprep foi concluído com erros. Nem todas as partições são actualizadas.

Causa

Este problema ocorre quando o comando Adprep /rodcprep tenta contactar o mestre de infra-estruturas para cada partição de aplicação na floresta. O comando efectua este procedimento para definir as permissões necessárias para a replicação do controlador de domínio Read-Only (RODC). O comando Adprep /rodcprep falhar se uma das seguintes condições for verdadeira:
  • A partição ou partições que são referenciadas na mensagem de erro já não existem.
  • O mestre de infra-estrutura para a partição referida ou partições tem foi despromovido à força ou está offline.

Resolução

Para resolver este problema se a partição já não existe, efectuar uma limpeza dos metadados para a partição isolada utilizando o parâmetro "Remover nc" da ferramenta Dsmgmt. Para mais informações, visite o seguinte Web site da Microsoft:
http://technet.microsoft.com/en-us/library/cc730970(WS.10).aspx
Se a partição especificada existe, especificar um proprietário de função de infra-estrutura que está online para a partição. Pode fazê manualmente modificando o atributo fSMORoleOwner no objecto, como descrito na secção "Mais informação".

Mais Informação

O seguinte exemplo de script modifica o atributo fSMORoleOwner no objecto de infra-estrutura do especificado sem domínio atribuição de nomes contexto (NDNC) para um servidor activo ou contactable. NDNC neste exemplo é o DomainDnsZones, DC = contoso, DC = com NDNC contexto de atribuição de nomes. O script utiliza o seguinte comando:
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
Para determinar o mestre de infra-estrutura para uma partição, consulta o atributo fSMORoleOwner no objecto de infra-estruturas na raiz de contexto de atribuição de nomes em questão. Por exemplo, consultar o atributo fSMORoleOwner no CN infra-estrutura, DC = DomainDnsZones, DC = = contoso, DC = com contexto raiz para determinar o mestre de infra-estrutura para atribuição de nomes a DC = DomainDnsZones, DC = contoso, DC = com partição. Consultar do mesmo modo, o atributo fSMORoleOwner no CN infra-estrutura, DC = ForestDnsZones, DC = = contoso, DC = com contexto raiz para determinar o mestre de infra-estrutura para atribuição de nomes a DC = ForestDnsZones, DC = contoso, DC = com partição.

Pode utilizar ferramentas tais como a ferramenta LDP, a ferramenta Editar ADSI (Active Directory Service Interfaces) e a ferramenta ldifde para efectuar estas consultas. Por exemplo, a consulta seguinte utiliza a ferramenta Idifde:
ldifde -f Infra_DomainDNSZones.ldf -d "CN = infra-estrutura, DC = DomainDnsZones, DC = contoso, DC = com" -l fSMORoleOwner
Esta consulta devolve o proprietário de função de mestre de infra-estrutura de DC = DomainDnsZones, DC = contoso, DC = com partição para o ficheiro Infra_DomainDNSZones.ldf.

Nota Pode executar o comando Adprep /rodcprep várias vezes sem afectando os da floresta. Operações que foram concluídas por execuções anteriores do comando rodcprep não são repetidas.

Se tentar executar o comando rodcprep num ambiente isolado, o mestre da infra-estrutura para cada domínio e para cada partição de directório de aplicação deve estar disponível no ambiente para a operação tenha êxito.

Propriedades

Artigo: 949257 - Última revisão: 16 de setembro de 2009 - Revisão: 2.0
A informação contida neste artigo aplica-se a:
  • Windows Server 2008 for Itanium-Based Systems
  • Windows Server 2008 Datacenter
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Datacenter without Hyper-V
  • Windows Server 2008 Enterprise without Hyper-V
  • Windows Server 2008 Standard without Hyper-V
  • Windows Server 2008 Standard
Palavras-chave: 
kbmt kbtshoot kbprb KB949257 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 949257

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com