Preciso verificar a configuração atual do NTP em alguns sistemas Windows. Idealmente, eu gostaria de poder fazer isso via linha de comando, em vez de navegar pelas telas de configuração.
(Estou trabalhando em várias versões diferentes do SO, e as telas de configuração nem sempre estão no mesmo lugar entre as versões.)
Espero encontrar um comando rápido e memorável que possa ser inserido em um console CMD para obter o resultado. Um arquivo em lote que eu possa carregar comigo também será bom.
Especificamente, preciso do seguinte:
- Mostrar se o sistema está ou não configurado para receber tempo de um servidor NTP.
- Mostra os servidores NTP dos quais o sistema está recebendo tempo.
- Mostra a hora da última sincronização.
- Mostra a hora atual no sistema.
Que comando (s) seria necessário para alcançar esses resultados?
Procurando uma solução compatível com o Windows XP, 7, Server 2003 e Server 2008.
net time /querysntp
mostra o servidor. Obter o resto pode ser complicado.Respostas:
Na linha de comando, digite
w32tm /query /configuration
fornece a configuração que você definiu.w32tm /query /status
fornece informações como:time /T
gera a hora atual do sistema.Nota:
w32tm /query
foi disponibilizado pela primeira vez nas versões do cliente Windows Time do Windows Vista e Windows Server 2008. Consulte Ferramentas e configurações do serviço de horário do Windowsfonte
time /t
e o tempo mostrado no canto inferior direito da barra de tarefas?w32tm /query /configuration
recebo "O seguinte erro ocorreu: Acesso negado. (0x80070005)" . Eu acho que tenho direitos suficientes.Isso responde à sua última pergunta:
Abra um prompt de comando e digite exatamente:
w32tm /stripchart /computer:NTPServerNameOrIP /dataonly /samples:x
(quantos retornos você deseja)Retorna a hora e a diferença para a hora do servidor NTP. Se retornar a hora, erro: 0x80072746, esse não é o seu servidor NTP.
Um exemplo de comando está abaixo:
fonte
Eu tentei:
Eu tenho:
Em uma máquina diferente, obtive:
Então eu tentei:
Eu tenho:
Então eu tentei:
Eu tenho:
Em outra máquina, recebi a página de ajuda, dizendo também:
Então, basicamente, o serviço não estava sendo executado. Seguindo estas instruções, eu fiz:
Finalmente, tudo isso funcionaria. (nota: se
net start
falhar, veja abaixo) Então eu só precisava configurar meu ntp ... fiz isso com:seguindo as instruções daqui , mas talvez pudesse ter sido tão fácil quanto:
como instruído aqui . (10.0.0.5 é o meu servidor NTP local). Se você não estiver usando um servidor NTP local, poderá usar o genérico:
Por fim, pode ser necessário fazer o seguinte, o que não era necessário para mim:
NOTA: se
net start w32time
falhar com o erro 1290 (a inicialização do serviço falhou, pois um ou mais serviços no mesmo processo têm uma configuração de tipo de SID de serviço incompatível), siga as etapas aqui :Então siga como acima.
NOTA 2: se o serviço NTP não iniciar automaticamente na reinicialização, talvez seja devido às suas configurações de inicialização, conforme descrito aqui : dependendo do seu Windows, ele poderá ser configurado para iniciar apenas quando ingressar em um domínio. Você pode verificar com:
Se ele estiver configurado para iniciar quando você ingressar em um domínio, e você não tiver um domínio configurado em sua máquina, ele não iniciará o serviço e definirá o horário. Provavelmente não ingressa em um domínio porque você não deseja. De qualquer forma, basta alterar o gatilho que o inicia. Por exemplo, para iniciar quando a máquina tiver rede (e, portanto, conseguir acessar o servidor), faça:
fonte
Usar:
Um arquivo de exemplo .bat está em https://gist.github.com/thedom85/dbeb58627adfb3d5c3af .
Eu também recomendo este programa: http://www.timesynctool.com/
fonte
Na linha de comando, você pode obter informações como estas:
Parece que isso deve ser suficiente, pelo menos, para ir nessa direção, isto é, se eu entendi sua pergunta. AFAIK, o comando 'reg' funciona em todas essas plataformas diferentes, desde que você tenha os serviços corretos em execução.
fonte
[\\machine\]
" significa que pode ser deixado de fora se estiver na mesma máquina?Dê uma olhada na
w32tm
ferramenta de linha de comando. Ele pode definir e consultar a configuração e reportar um / stripchart do tempo compensado com outro computador.fonte
/query
opção não está disponível no XP.net time /querysntp
.