windows – 如何在启动时同步计算机的时钟?

我有几个托管GoGrid的服务器,每次重启我的一个云服务器时,系统时钟都不正确.服务器不是域的成员,因此我只将操作系统设置为与Internet时间服务器同步.这只发生一天一次,我没有看到一个选项,可以在重启时自动执行此操作.所以我留下了编写一些代码来为我做这件事.

我使用“w32tm / resync”命令创建了一个批处理文件,并将其安排在系统启动时运行,但它不起作用,因为运行批处理文件时网络连接不可用.如何在OS完​​全加载并且网络连接可用后启动时间同步?我需要时间在计算机启动后尽快正确,这样我的数据库中的时间戳才是正确的.

Windows 2008上,任务计划程序中有一个选项,允许您在任务运行之前等待网络连接可用.在任务属性对话框中,创建一个新的“启动时”触发器,并确保选中“已启用”框.添加操作以运行批处理文件.最后,添加条件以仅在网络连接可用时启动任务.然后我要求它重新启动命令,如果失败则最多3次.这似乎很有效.

在旧版本的Windows上,使用以下批处理文件内容重试sync命令,直到它成功,或者直到它重试次数太多.

REM *** Retry for up to 15 minutes (90 retries @ 10 seconds each)
set retryCount=0

:SyncStart
if %retryCount == 90 goto SyncEnd
set /A retryCount=retryCount + 1

REM *** Resync the system clock
w32tm /resync
if errorlevel 1 goto SyncDelay
if errorlevel 0 goto SyncEnd

:SyncDelay
REM *** If unsuccessful,delay 10 seconds,then retry
choice /n /t:y,10>nul
goto SyncStart

:SyncEnd

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...