Solução de problemas do Serviço de Tempo do Windows w32time
摘要: Problemas do Serviço de Tempo do Windows (w32time) no domínio do Active Directory; como corrigir o tempo de sincronização usando a ressincronização do w32tm, configurar servidores de horário e usar comandos w32tm em servidores Windows. ...
症状
O Serviço de Tempo do Windows é importante no Active Directory. Por padrão, a autenticação Kerberos exige que os relógios de todas as máquinas no domínio sejam sincronizados a até cinco minutos entre si quando corrigidas as diferenças de fuso horário e o horário de verão. As máquinas cujos relógios estão fora desse intervalo não podem se autenticar e não têm acesso aos recursos do domínio.
原因
Em um domínio do AD, o DC (Domain Controller, Controlador de Domínio) que contém a função FSMO do emulador PDC é o servidor de horário principal para todo o domínio. No entanto, isso não significa que todas as máquinas do domínio sincronizam o relógio diretamente com o emulador PDC. Outros DCs são sincronizados com o emulador PDC, enquanto os clients e os servidores membros podem ser sincronizados com qualquer DC. Nessa hierarquia, o emulador PDC deve ser a única máquina configurada para sincronização com uma origem de hora externa, como um servidor NTP público. Todo o restante no domínio deve ser configurado para sincronização com o AD. Qualquer outra configuração pode resultar em perda de sincronização do relógio.
Consulte o documento da Microsoft Como funciona o serviço de tempo do Windows para obter informações detalhadas sobre como o serviço de tempo do Windows funciona.
解决方案
Determine a extensão do problema.
A primeira etapa para solucionar um problema do Serviço de Tempo do Windows deve ser determinar quantas máquinas foram afetadas. Se a hora estiver incorreta em apenas uma máquina, as etapas necessárias para corrigir o problema serão diferentes das etapas necessárias para corrigir um problema de horário em todo o domínio.
Se apenas algumas máquinas forem afetadas:
- Se o computador afetado estiver executando o Windows Vista ou posterior, execute
w32tm /query /sourceem um prompt de comando para determinar a origem de hora da máquina afetada. Uma origem de hora externa só deve ser listada se este comando for executado no emulador PDC. Caso contrário, o comando deve gerar o nome de um DC no domínio. - O comando
w32tm /query /statusO comando também mostra a fonte de tempo da máquina e outras informações potencialmente úteis. O comando/verboseswitch fornece ainda mais informações. Assim como acontece com o primeiro comando, esses comutadores só estão disponíveis em máquinas que executam o Windows Vista ou posterior. - Se a fonte de hora correta estiver listada, você poderá usar
w32tm /resyncpara tentar ressincronizar o relógio da máquina com a fonte de hora. Adicionando o/rediscoverAlternar para esse comando faz com que a máquina primeiro tente descobrir fontes de horário de rede e, em seguida, tente uma ressincronização. - Para alterar a origem de hora da máquina, você pode usar um dos dois comandos:
w32tm /config /syncfromflags:DOMHIER /updateconfigura a máquina para usar a hierarquia de domínio (AD) como sua fonte de tempo.w32tm /config /syncfromflags:MANUAL /manualpeerlist:<list> /updateConfigura a máquina para usar os servidores de horário em<list>como sua fonte de tempo.
Nota: Se vários servidores de horário forem especificados em<list>, eles devem ser separados por espaços, e a lista inteira deve ser colocada entre aspas.
Se todo o domínio for afetado:
- Se a hora estiver incorreta em todas as máquinas do domínio, é provável que o emulador PDC seja a origem do problema. Execute o
netdom query fsmoem um controlador de domínio para determinar qual controlador de domínio mantém a função de emulador de PDC. - Execute
w32tm /query /sourcede um prompt de comando no emulador do PDC para garantir que ele esteja configurado para sincronizar com uma fonte de horário externa. O emulador PDC nunca deve ser configurado para sincronização com o domínio, pois ele é a origem de tempo principal do domínio. - Se o emulador PDC for uma máquina virtual (VM), desative a sincronização do relógio do host convidado. O procedimento para fazer isso depende do sistema operacional em execução no host de virtualização.
- Para configurar o emulador PDC para sincronização com um ou mais servidores de horário externos, use o seguinte comando:
w32tm /config /syncfromflags:MANUAL /manualpeerlist:<list> /updateNota: Se vários servidores de horário forem especificados em<list>, eles devem ser separados por espaços, e a lista inteira deve ser colocada entre aspas.
Configurações de registro do Serviço de Tempo do Windows
O comando w32tm comandos especificados nos procedimentos acima alteram os valores do Registro do Serviço de Tempo do Windows, que estão todos localizados na seguinte chave do Registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time
É possível definir esses valores manualmente em vez de usar w32tm a seguir. Se você optar por fazer isso, os seguintes documentos da Microsoft podem ser úteis:
- Ferramentas e configurações
de serviço de tempo do Windows (inclui uma seção sobre configurações do registro)
- Como configurar um servidor de horário autoritativo no Windows Server
Política de grupo
Se você alterar para o serviço de Tempo do Windows usando w32tm ou usando o Registro, mas essas alterações não têm efeito ou têm efeito por apenas um curto período de tempo antes de reverter para seus valores anteriores, um GPO (Objeto de Diretiva de Grupo) pode estar substituindo suas alterações. As configurações de Diretiva de Grupo para o serviço de Tempo do Windows incluem muitos dos mesmos itens que podem ser configurados usando o Registro ou w32tm a seguir. Essas configurações podem ser encontradas nos seguintes locais:
Computer Configuration\Policies\Administrative Templates\System\Windows Time Service
Redefina os valores de registro do serviço de tempo do Windows para as configurações padrão.
Se nada mais funcionar, este procedimento redefinirá o Serviço de Tempo do Windows para as configurações padrão:
- Abra o Console de serviços e interrompa o serviço de Tempo do Windows (ou execute
net stop w32timeem um prompt de comando), se estiver em execução. - Abra um prompt de comando elevado e execute
w32tm /unregisterpara remover o serviço de Tempo do Windows do Registro. O serviço não está mais listado no Console de serviços. - Execute
w32tm /registerpara recriar o serviço com suas configurações de registro padrão. - Faça as alterações necessárias no registro e inicie o serviço de Tempo do Windows no console Serviços ou com o
net start w32time.
其他信息
- Como saber se o serviço de tempo do Windows está em execução?
services.msc), localize a hora do Windows e verifique se seu status é Em execução. Você também pode verificar o Tipo de inicialização para garantir que ele esteja definido como Automático ou Manual.
Consulte o artigo da Meinberg Solução rápida de problemas para sincronização do serviço de tempo do Windows (w32time) para obter dicas rápidas de solução de problemas.
- Qual é a precisão do serviço de horário do Windows?
Consulte o artigo da Microsoft Configurando sistemas para alta precisão para obter mais informações.