我正在Windows 7上工作。我可以手动从 ntp linux 服务器同步 win7 的时间。如何在命令提示符下执行此操作。所以我可以在Windows启动时运行它。Windows任务计划对我不起作用。时间应该是这样的:
Linux server --> windows 7.
有人知道吗?谢谢。我可以阅读msdn。
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
.BAT示例文件:https://gist.github.com/thedom85/dbeb58627adfb3d5c3af
我也推荐这个程序:http://www.timesynctool.com/
使用净时间 net time \timesrv /set /yes
在您的评论之后,在弹出提示中尝试这个:
w32tm /config /update /manualpeerlist:yourtimerserver
如果只需要resync
窗口时间,请打开提升的命令提示符并键入:
w32tm /resync
C:WINDOWSsystem32>w32tm /resync
Sending resync command to local computer
The command completed successfully.
虽然理论上w32tm /resync
可以完成这项工作,但它只在某些条件下这样做。然而,当"精确到毫秒"很重要时,我发现Windows实际上不会进行调整;好像"哦,我差了 2.5 秒,足够近,兄弟,这里没有什么可看或做的"。
为了真正强制重新同步(Windows 7):
- 控制面板 ->日期和时间
- "更改日期和时间..."(需要管理员权限)
- 加减几分钟(我用了-5分钟)
- 以管理员身份运行"cmd.exe"
-
w32tm /resync
- 目视检查"日期和时间"控制面板中的秒是否与您的权威时钟同时滴答作响。(我在网络上的 Linux 机器上使用
watch -n 0.1 date
,我已经 SSH 进入了)
---快速方法---
- 以管理员身份运行"cmd.exe"
-
net start w32time
(时间服务必须正在运行) -
time 8
(其中 8 可以用任何"小时"值代替,大概是 0-23) -
w32tm /resync
- 根据需要跳转到 3。