如何在命令中从ntp时间服务器同步窗口时间

Nic*_*ong 32 windows time ntp

我正在使用Windows 7.我可以手动从ntp linux服务器同步win7的时间.我怎么能在命令提示符下执行此操作.所以我可以在Windows启动时运行它.Windows任务计划对我不起作用.时间应该是这样的:

Linux server -->  windows 7.
Run Code Online (Sandbox Code Playgroud)

谁知道呢?谢谢.我可以阅读msdn.

Dom*_*nzi 49

net stop w32time
w32tm /config /syncfromflags:manual /manualpeerlist:"0.it.pool.ntp.org 1.it.pool.ntp.org 2.it.pool.ntp.org 3.it.pool.ntp.org"
net start w32time
w32tm /config /update
w32tm /resync /rediscover
Run Code Online (Sandbox Code Playgroud)

.BAT示例文件:https://gist.github.com/thedom85/dbeb58627adfb3d5c3af

我也推荐这个程序:http://www.timesynctool.com/

  • 感谢`timesynctool` ref,正是我所需要的. (4认同)

Loï*_*HEL 31

使用净时间 net time \\timesrv /set /yes

你的评论后在平均提示中尝试这个:

w32tm /config /update /manualpeerlist:yourtimerserver
Run Code Online (Sandbox Code Playgroud)

  • @Kayasax`w32tm/resync`说"计算机没有重新同步,因为所需的时间变化太大了." 因为我的CMOS电池耗尽,我的电脑时钟在每次启动时都会在1/1/2000 12:00 AM重置.有帮助吗? (3认同)
  • @Kayasax根据http://blog.bruteforcetech.com/archives/911找到了解决方案,不要忘记重启W32Time服务`net stop W32Time`然后重试`w32tm / resync` (2认同)
  • 另外,如果您在虚拟机上,请通过以下注册表调整关闭 VMICTimeProvider!https://serverfault.com/a/490619/169771 (2认同)

Ped*_*ito 8

如果您只需要resyncWindows时间,请打开提升的命令提示符并键入:

w32tm /resync
Run Code Online (Sandbox Code Playgroud)
C:\WINDOWS\system32>w32tm /resync 
Sending resync command to local computer 
The command completed successfully.
Run Code Online (Sandbox Code Playgroud)


sta*_*cke 5

虽然w32tm /resync理论上可以完成这项工作,但它仅在某些条件下才会这样做。然而,当“精确到毫秒”很重要时,我发现 Windows 实际上不会进行调整;好像“哦,我走了 2.5 秒,离兄弟很近,这里没什么可看或可做的”。

为了真正强制重新同步(Windows 7):

  1. 控制面板 -> 日期和时间
  2. “更改日期和时间...”(需要管理员权限)
  3. 加减几分钟(我用了 -5 分钟)
  4. 以管理员身份运行“cmd.exe”
  5. w32tm /resync
  6. 目视检查“日期和时间”控制面板中的秒数是否与您的权威时钟同时计时。(我watch -n 0.1 date在 SSH 连接到的网络上的 Linux 机器上使用)

--- 快速方法 ---

  1. 以管理员身份运行“cmd.exe”
  2. net start w32time (时间服务必须正在运行)
  3. time 8 (其中 8 可以替换为任何“小时”值,大概是 0-23)
  4. w32tm /resync
  5. 根据需要跳到 3。