Qual è il comando per sincronizzare una workstation o un server Windows con l'origine temporale configurata?
Qual è il comando per sincronizzare una workstation o un server Windows con l'origine temporale configurata?
Risposte:
Come ha detto Kyle w32tm /resync
è il modo moderno di farlo. Vedere questo collegamento a Microsoft Knowledge Base (307897 KB) per ulteriori informazioni sul comando w32tm.
Esiste anche net time
una versione precedente ma forse più semplice.
w32tm /resync
dice "Il computer non si è risincronizzato perché la modifica dell'ora richiesta era troppo grande". poiché la batteria CMOS è scarica e l'orologio del computer si ripristina ad ogni avvio alle 1/1/2000 12:00 AM. Qualsiasi aiuto?
net stop W32Time
quindi riprovarew32tm /resync
w32tm /resync /force
. Ma se non hai avviato il servizio, esegui net start w32time
. Entrambi da un prompt elevato.
Per quelli che ancora fanno questa domanda.
Per aggiornare, utilizzare il comando seguente (compatibile con server 2008 e 2012)
w32tm /config /manualpeerlist:"ntp_server" /syncfromflags:manual /reliable:yes /update
cambia ntp_server con la tua fonte
Riavvia il servizio orario
net stop w32time
net start w32time
Risincronizza l'ora
w32tm /resync
Verifica il tuo stato di sincronizzazione
w32tm /query /status
I comandi sopra dovrebbero andare bene se le tue fonti funzionano correttamente e / o la tua connessione è OK (anche il firewall o Microsoft Forefront possono essere un problema). I comandi seguenti possono aiutare con la risoluzione dei problemi
Per elencare i colleghi
w32tm /query /peers
Per elencare le fonti NTP:
w32tm /query /source
w32tm /monitor /computers:time.windows.com
Puoi usare il seguente comando:
w32tm /resync
Puoi usare:
w32tm /resync
Inoltre, l'utilizzo w32tm /resync /rediscover
consentirà anche di "forzare il rilevamento della rete con risorse prima della risincronizzazione".
O usando:
net time /set
Ti chiederà di impostare l'ora sul DC. (Funziona con versioni precedenti di Windows)
w32tm /resync
non ha funzionato per me, ma net time /SET /Y
ha funzionato. Ho usato /Y
per net time
perché a quanto pare non legge stdin correttamente quando si passa attraverso sshd da Cygwin.
w32tm /resync
ho ricevuto il messaggio The computer did not resync because no time data was available.
anche dopo il riavvio del servizio ma ha net time /SET
funzionato correttamente per me.
Sistema operativo: MS Windows 7
Tutte le idee sopra sono state provate ma non hanno aiutato. Il problema originale persiste: " Il computer non si è risincronizzato perché la modifica dell'ora richiesta era troppo grande " .
La soluzione è stata trovata nel registro: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ w32time \ Config
(usa Google per maggiori dettagli)
Uso questo semplice win_clock_sync.bat
file dal menu Start StartUp:
echo off
echo Sync computer time from internet
echo.
echo Back-up registry w32time\Config
reg export HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\w32time\Config exported_w32time.reg /y
rem changing the registry keys temporarly:
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\w32time\Config /v MaxNegPhaseCorrection /d 0xFFFFFFFF /t REG_DWORD /f
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\w32time\Config /v MaxPosPhaseCorrection /d 0xFFFFFFFF /t REG_DWORD /f
echo.
echo w32tm /config /update
w32tm /config /update
echo.
echo w32tm /resync /rediscover
w32tm /resync /rediscover
echo.
echo Restore registry w32time\Config
reg import exported_w32time.reg
Godere! :-)
MaxNegPhaseCorrection
e MaxPosPhaseCorrection
invece di suggerire che dovrebbero essere disabilitati alla cieca. Questo è ciò che fa questo script impostando i loro dati su 0xFFFFFFFF .
MaxNegPhaseCorrection
e MaxPosPhaseCorrection
. Incoraggio comunque a includere una spiegazione di ciò che fanno queste due impostazioni in quanto sono una caratteristica chiave della tua risposta ed è importante che un amministratore sia consapevole del fatto che se queste impostazioni dovessero essere impostate in modo permanente, configurerebbero il loro sistema in modo che accetti qualsiasi cambiamento di orario, non importa quanto sia grande, il che potrebbe interrompere Kerberos e altri importanti servizi di rete.
Powershell one liner se il server ntp è configurato:
gsv w32time | sasv; w32tm /resync /force
È possibile inserire questo file .bat all'avvio se la batteria CMOS non è riuscita in modo che possa risincronizzarsi all'avvio del sistema operativo:
@powrshell -NoProfile -Command 'gsv w32time | sasv; w32tm /resync /force'
/force
non è un'opzione della riga di comando documentata per w32tm /resync
.
net start w32time
w32tm /resync
Prova in questo ordine. Funziona sempre.
w32tm /unregister
w32tm /register
net stop w32time
net start w32time
w32tm /resync
Quasi nessuna delle soluzioni (tranne @Akos) funziona se l'host è un controller di dominio Active Directory (ADDC) di Windows Server 2016, poiché si considera una fonte "affidabile" che non può apportare grandi cambiamenti.
w32tm /resync /force
non funziona perché /force
non viene visualizzato nel server 2016.
net time /SET /Y
non funziona neanche, perché avrebbe chiesto:
Vuoi impostare l'ora del computer locale in modo che corrisponda all'ora alle
\AD.example.net
? (S / N) [S]
Certo, non funzionerà se ci sei AD.example.net
, /Y
nasconde solo la domanda.
I passaggi funzionano per me utilizzando PowerShell:
w32tm /config /reliable:no /syncfromflags:manual /update
Opzione /syncfromflags:manual
significa sincronizzazione con NTP elencato nell'elenco peer (ovvero NTP esterno), /update
per notificare il servizio orario in cui la configurazione è cambiata.
Stop-Service w32time
Start-Service w32time
w32tm /resync
Questo dovrebbe funzionare.
w32tm /config /reliable:yes /update
Stop-Service w32time
Start-Service w32time
Ho un'immagine Win10 che posso ripristinare in un'istantanea in cui questo messaggio di errore è sempre riproducibile: "The computer did not resync because the required time change was too big."
Ho provato a scrivere una soluzione a questo problema senza alcun risultato:
reg import nettime.reg # updates MaxPosPhaseOffset and MaxNegPhaseOffset
net start w32time
w32tm.exe /config /manualpeerlist:"pool.ntp.org",0x8 /syncfromflags:manual /reliable:no /update
w32tm.exe /query /configuration
w32tm.exe /resync /rediscover
w32tm.exe /resync /force
Né le /reliable:no
né le MaxPosPhaseCorrection
impostazioni, né altri comandi indicate qui lavorato immediatamente in modo riproducibile.
Dopo aver aggiornato il registro, avviare il servizio, aggiornare la configurazione e riavviare nuovamente il servizio, ho comunque dovuto attendere molti minuti prima di w32tm /resync /rediscover
riuscire.
La sincronizzazione temporale alla fine ha successo, ma non in modo tempestivo e affidabile.