Sincronice automáticamente la hora de Windows con más frecuencia que la predeterminada

21

Tengo algunas PC que pierden tiempo y me gustaría que Windows las sincronice más a menudo con el tiempo de Internet. Creo que el valor predeterminado de Windows intenta actualizarse solo una vez al día, y no se actualiza si el servidor horario no está disponible (lo que parece suceder con bastante frecuencia), lo que significa que las PC pueden terminar 20 o 30 segundos.

Me gustaría crear una tarea programada para hacer esto, por ejemplo, cada 5 minutos y si el servidor de hora predeterminado no está disponible, use mul

DermFrench
fuente
2
¿No sería más fácil determinar la razón por la cual las computadoras en cuestión no pueden conectarse al servidor horario?
Ramhound
Los servidores predeterminados también me fallan a menudo. Intente cambiarlo pool.ntp.orgcomo se sugiere en esta respuesta
jan-glx

Respuestas:

14

Amigos, lo ejecuté con Windows integrado en w32tm y una tarea programada (ver más abajo).

El primer paso fue configurar w32tm para usar muchos servidores de tiempo diferentes (y también para iniciar sesión para que pudiéramos ver lo que estaba sucediendo). El segundo paso fue programar w32tm en el programador de tareas. Me gustaron estas soluciones ya que no requería ninguna herramienta de tercera parte. Es realmente importante configurar los diferentes servidores de tiempo ya que a menudo encuentro que no responden.

Configurar w32tm

Abrir símbolo del sistema (Ejecute lo siguiente como administrador)

w32tm /config /manualpeerlist:"time.nist.gov time.windows.com time-nw.nist.gov time-a.nist.gov time-b.nist.gov time-a.timefreq.bldrdoc.gov time-b.timefreq.bldrdoc.gov time-c.timefreq.bldrdoc.gov utcnist.colorado.edu" /syncfromflags:manual /update

w32tm /query /configuration

Verifique si la lista de servidores NTP se actualiza correctamente, es decir, refleja la lista de pares que acaba de ingresar

w32tm /debug /enable /file:C:\windows\temp\w32time.log /size:10000000 /entries:300

Examine el directorio y verifique que se haya creado el registro

Cambie la hora del sistema manualmente (para que la hora no esté sincronizada), luego regrese al símbolo del sistema y ejecute el comando resync

w32tm /resync

Verifique que se haya actualizado la hora del sistema. ** Si recibe un error acerca de que el servicio horario no se está iniciando, puede usar el comando y net start w32timeluego intentar otra resincronización

Si obtiene el siguiente error: The compter did not resync because the required time change was too big.use este comando para volver a sincronizar:w32tm /resync /force

Si esto funciona correctamente, todo lo que tiene que hacer es configurar la siguiente tarea programada para que se ejecute con la frecuencia que desee (utilizará su lista de pares configurada anteriormente).

Programar w32tm

Programa / Argumento de guión

%windir%\system32\sc.exe start w32time task_started
%windir%\system32\w32tm.exe /resync
DermFrench
fuente
1
De forma predeterminada, Windows Time obtiene tiempo actualizado al menos cada 9.1 horas . Esto está controlado por la MaxPollIntervalentrada de registro discutida en ese enlace. Los datos de esta entrada se convierten a segundos con la fórmula 2^Value. por ejemplo, si el valor de MaxPollInterval es 11, entonces 2^11=2048sec=34minutes. Para aquellos que quieren reducir la frecuencia de actualización y sin el uso de una tarea programada, basta con modificar esta entrada del registro y reinicie el servicio de hora de Windows con net stop w32timecontinuación net start w32time.
Digo reinstalar a Mónica el
" /entries:300" no es la opción correcta. Solo mostrará las entradas registradas con el código # 300, que no tiene muchas entradas. La idea es usar este parámetro como una lista de números de entrada para mostrar, por lo que " /entries:0-300" mostrará todos los eventos posibles en el registro.
MikeB
9

Vaya a Panel de control> Herramientas administrativas> Programador de tareas

a la izquierda hay un árbol de carpetas, expanda: Biblioteca del programador de tareas> Microsoft> Windows> Sincronización de hora

haga clic derecho en la tarea: SynchronizeTime> propiedades

En la pestaña: Disparadores, puede agregar los disparadores que desee.

Rudger
fuente
El OP solicitó un intervalo de sincronización de tiempo de 20-30 s. Esto solo es posible con el truco para definir múltiples disparadores
nixda
2
Idea errónea común, ¡pero realmente no se te puede culpar! Esta tarea programada solo garantiza que el servicio de hora de Windows se esté ejecutando ... Por lo tanto, incluso si activa la tarea con más frecuencia, sigue siendo el servicio el que decide cuándo sincronizar, lo que aparentemente es semanal.
Gras Double
66
Para cambiar la frecuencia de la encuesta: clave de registro HKLM\SYSTEM\CurrentControlSet\services\W32Time\TimeProviders\NtpClient, edite DWORD SpecialPollInterval, en segundos (por ejemplo, para un día: hexadecimal 15180 o decimal 86400).
Gras Double
¡Excelente! este truco funcionó para mí en mi sistema operativo W7
razor7
2
Gracias a Microsoft por hacer una tarea simple como sonar la sincronización de tiempo COMPLICADO MALDITO. La única solución sensata es ejecutar silenciosamente una utilidad de terceros de forma regular.
Gras Double
4

Puede usar TimeSync para automatizar la sincronización horaria.

  • Al revés: no registra un servicio completo como W32tm (que tienes cuando usas W32tm)
  • Al revés: es portátil y se puede ejecutar con la /autoopción desde la carpeta de inicio
  • inconveniente: herramienta de terceros y no una solución integrada

    ingrese la descripción de la imagen aquí

TimeSync obtiene la hora actual de un servidor NIST y ajusta el reloj de la PC si es necesario. La precisión es generalmente dentro de un segundo. [...] TimeSync probará servidores alternativos, en caso de que no se pueda obtener el tiempo del servidor preferido.

Se proporciona la opción / auto para ejecutar TimeSync desde la carpeta StartUp. En este modo, la ventana TimeSync no se mostrará si el desplazamiento del reloj está por debajo de un mínimo determinado.


Por supuesto, aún puede registrar la solución integrada W32tm cmd.exe → W32tm /registery configurar su tarea programada para llamar cmd.exe → W32tm /resynccada 5 minutos.

nixda
fuente
2

También puede probar este programa: http://www.worldtimeserver.com/atomic-clock/ Le permite cambiar la configuración del servicio horario de Windows de la manera más fácil.

También forzar la sincronización funciona, mientras que las ventanas "actualizar ahora" casi nunca funcionan.

NickSoft
fuente
-1

Ejecuto este comando en los quioscos que administro.

net start w32time 
w32tm /resync /force

para configurar manualmente la fecha y hora:

date 5/24/2017
time 18:37:00

Para configurar la zona horaria:

tzutil/s Pacific Standard Time
usuario1449936
fuente
1
¿Qué hacen los comandos en el primer bloque de código? ¿El segundo y el tercer bloque de código tienen algo que ver con esta pregunta?
Scott,