比默认更频繁地自动同步 Windows 时间

比默认更频繁地自动同步 Windows 时间

我有几台电脑时间不准,我希望 Windows 能更频繁地将它们与互联网时间同步。我认为 Windows 默认每天只尝试更新一次,如果时间服务器不可用(这种情况似乎经常发生),则不会更新,这意味着电脑可能会迟到 20 或 30 秒。

我想创建一个计划任务来执行此操作,例如每 5 分钟一次,如果默认时间服务器不可用,则使用 mul

答案1

伙计们,我使用内置于 w32tm 的 Windows 和计划任务运行了它(见下文)。

第一步是配置 w32tm 使用许多不同的时间服务器(并记录日志,以便我们了解发生了什么)。第二步是在任务计划程序中安排 w32tm。我喜欢这个解决方案,因为它不需要任何第三方工具。设置不同的时间服务器非常重要,因为我发现它们经常没有响应。

配置 w32tm

打开命令提示符(以管理员身份运行以下命令)

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

检查 NTP 服务器列表是否正确更新,即它反映了您刚刚输入的对等列表

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

浏览目录并检查日志是否已创建

手动更改系统时间(这样时间现在就不同步了),然后返回命令提示符并运行重新同步命令

w32tm /resync

检查系统时间是否已更新。**如果您收到有关时间服务未启动的错误,您可以使用该命令,net start w32time然后尝试另一次重新同步

如果出现以下错误:The compter did not resync because the required time change was too big.则使用此命令重新同步:w32tm /resync /force

如果这成功运行,那么您要做的就是配置以下计划任务以根据需要经常运行(它将使用您上面配置的对等列表)。

时间表 w32tm

程序/脚本参数

%windir%\system32\sc.exe start w32time task_started
%windir%\system32\w32tm.exe /resync

答案2

转到控制面板 > 管理工具 > 任务计划程序

左侧是文件夹树,展开:任务计划程序库 > Microsoft > Windows > 时间同步

右键单击任务:SynchronizeTime > 属性

在选项卡:触发器上,您可以添加所需的触发器。

答案3

您可以使用时间同步自动实现时间同步。

  • 优点:不需要注册像 W32tm 这样的整个服务(当您使用 W32tm 时,您需要注册整个服务)

  • /auto优点:它是便携式的,可以从启动文件夹中选择运行

  • 缺点:第三方工具,而非内置解决方案

    在此处输入图片描述

TimeSync 从NIST 服务器,并在必要时调整 PC 时钟。精度通常在一秒之内。[...] 如果无法从首选服务器获取时间,TimeSync 将尝试其他服务器。

提供选项 /auto 来从 StartUp 文件夹运行 TimeSync。在此模式下,如果时钟偏移低于给定的最小值,TimeSync 窗口将不会显示。


当然,您仍然可以注册内置解决方案 W32tm,cmd.exe → W32tm /register并设置cmd.exe → W32tm /resync每 5 分钟调用一次的计划任务。

答案4

我在我管理的信息亭上运行此命令。

net start w32time 
w32tm /resync /force

手动设置日期时间:

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

设置时区:

tzutil/s Pacific Standard Time

相关内容