Acontece que eu não tinha nenhum mestre de esquema ativo no meu domínio. Eu perguntei aqui sobre como obter o proprietário do esquema ativo. O nome era válido, mas o nome da máquina era um nome que havia sido desativado e encerrado há muito tempo, mas ninguém transferiu a função de mestre de esquema antes de morrer.
Aqui está o que eu tive que fazer:
-
Enquanto o windows server 2012 tenta evitar que você execute o adprep, ele não pode ser feito em alguns casos. No meu caso, alguém havia criado um controlador de domínio e transferido a função PDC para um servidor, mas não a função de mestre de esquema, depois retirou o servidor mestre de esquema sem transferir a função de mestre de esquema normalmente. Diagnosticar problemas como este, ao passar de uma versão de 9 anos do Windows para a versão mais recente, é difícil porque no Windows Server 2012, você obtém erros do Win32 e esses erros são apenas valores inteiros negativos grandes como mostrado na minha pergunta. Mas até mesmo as tentativas de atualização de 2003 para 2008 R2 foram bloqueadas de forma semelhante e nenhuma mensagem de erro útil foi exibida. Claro que é típico para problemas do ActiveDirectory. Ler logs e executar utilitários de diagnóstico de linha de comando é parte do "fluxograma para solução de problemas" padrão, se você consultar o TechNet. É um poço gigante de complexidade acidental.
-
Em casos como o acima, você só recebe erros úteis ao executar o AdPrep no modo independente. Infelizmente, apenas 64 bits adprep vem com o windows server 2012. use 2008 r2 install dvd para obter 32 bits adprep32.exe.
-
Pesquisando os erros da execução da versão do AdPrep para o Windows 2008 R2 no modo de linha de comando autônomo, descobri que tinha que ter certeza de que uma máquina controladora de domínio com a função Mestre de Esquema existisse e estivesse ativa no rede. Observe que a versão do AdPrep que está no Windows Server 2012 foi projetada para ser executada a partir do seu servidor de 2012, não em suas máquinas mestre de função, como foi anteriormente o caso para o uso do AdPrep. Se você tentar executar a ferramenta AdPrep em uma máquina Windows Server 2003 de 32 bits, ficará paralisado porque o AdPrep.exe nem mesmo será executado e imprimirá qualquer mensagem de erro em sua máquina de 32 bits. No meu caso, nenhum existia e eu tive que usar este link para "aproveitar" a função Schema Master usando a ajuda principal do NTDSUTIL:
Ajuda específica para confiscar o mestre de esquema:
Como eu disse no passo 1, a maioria das pessoas não terá esse problema, mas a confusão nos círculos de TI amadores pode levar outros a ter problemas semelhantes.
Também perguntei como identificar o nome do mestre do esquema ativo, na linha de comando do link question e este comando funciona para descobrir quem é o mestre de esquema:
netdom query fsmo
Em seguida, executei ntdsutil
conforme detalhado no ponto # 3 acima, aproveitei a função de Mestre de Esquema para reparar o domínio e, depois disso, consegui executar adprep
normalmente:
adprep /forestPrep
... <takes about 10 minutes and outputs several screens of info>
adprep /domainPrep
... <takes about 1 second and outputs about 15 lines>
E então adprep
funciona. Note que você ainda não terminou. A configuração do controlador de domínio do Windows Server 2012 ainda falhará em centenas de outros problemas, muitos para listar aqui. Outras coisas que tive que fazer para que funcionasse:
-
Remova o Symantec Endpoint Protection e desative o Firewall do Windows, para que o WMI funcione na rede, o que é necessário para o novo controlador de domínio falar com o antigo controlador de domínio.
-
Conserte alguns erros de configuração de DNS e, em seguida, execute
ipconfig /flushdns
, incluindo a remoção de servidores desativados que não foi devidamente desmembrado, o que significa basicamente ir para a tela de gerenciamento do AD e excluir esses servidores. Outros erros de DNS podem incluir falta de registros DNS reversos, etc. -
Verifique se, ao receber erros de comunicação por meio do WMI / DCOM, você repara as permissões de serviço ou outros erros que podem impedir o funcionamento do WMI e do DCOM.