我们有一个服务器,它经常会出现时钟漂移问题。它是Windows 2012作为客户在HyperV主机上运行。
我的印象是,这个预定的任务应该定期导致重新同步:
\Microsoft\Windows\Time Synchronization\SynchronizeTime让我困惑的是,当我在任务调度器中查看此任务的配置时,触发器下没有列出任何内容。下一个运行时列是空的,但是最后一个运行时列显示"16/5/2014 3:24:48上午“。
所以我知道它是在5天前运行的,但我不知道是什么触发了它。怎么控制的?
我想要理解这一点的原因是,我想我可能需要调整这个任务的频率,使之像每天一样,以对抗时钟漂移。
我还不想讨论同步服务器时钟的最佳方法--现在我专门询问这个预定任务的行为。
发布于 2014-05-21 12:34:30
由于您明确要求我们不要就如何在Windows机器上同步时间给您提供建议,所以我将尽量避免这样做。
您在Microsoft文件夹下看到的计划任务通常由Microsoft编写,用于操作Windows操作系统的各种组件,而处理这些组件通常不是一个好主意。
正如您所看到的,您所指出的计划任务根本没有触发器。如果您只打算手动执行任务(或调用从另一个程序运行它),则可以在没有触发器的情况下创建计划任务。您可以看到,大多数这些计划中的任务都是Microsoft向操作系统添加的,并且没有触发器,这些任务与在Windows 7和2008 R2中将Windows触发器添加到操作系统中的任务是一致的。如果您查看该计划任务的操作,您将看到以下内容:
%windir%\system32\sc.exe start w32time task_started注意,计划的任务将命令行参数传递给w32time服务task_started,以让程序知道它是从预定任务启动的,而不是通过其他方式启动的,例如有人通过services.msc手动翻转服务。这使得该计划可以根据其启动方式采取不同的行动方针。
如果您查看w32time的服务触发器:
C:\Windows\system32>sc qtriggerinfo w32time
[SC] QueryServiceConfig2 SUCCESS
SERVICE_NAME: w32time
START SERVICE
DOMAIN JOINED STATUS : 1ce20aba-9851-4421-9430-1ddeb766e809 [DOMAIN JOINED]
STOP SERVICE
DOMAIN JOINED STATUS : ddaf516e-58c2-4866-9574-c3b615d42ea1 [NOT DOMAIN JOINED]那么,这是否意味着Windows时间服务仅在计算机的域状态更改时才运行?当然不是。这意味着,世界各地数百万个人电脑在人们的家中永远不会加入一个域名,将没有时间同步能力,显然不是这样。Windows会自动唤醒时间服务并随时同步自己.在初创公司,周日凌晨1:00,有几个案例。
Windows时间服务现在是触发器启动的,并且不会在后台不断运行.这样做的目的是在运行不需要24/7运行的后台服务时节省浪费的CPU周期和电池电量。但关键是,除非w32time服务正在运行,否则无法重新同步时间。那么,您将如何自动启动服务,使其同步时间,然后再次关闭?
我会设置一个预定的任务,并从操作系统中的其他地方调用它。
https://serverfault.com/questions/597370
复制相似问题