服务器时间不对引发的问题与同步设置
发布时间:2026-05-28 19:06       
更新时间:2026-05-28 23:47
时间不准不只是右下角显示难看的问题,域认证和证书校验都会被它牵连,几分钟的偏差就足够让业务报错。
为什么会出问题
域环境里 Kerberos(域内票据认证协议)默认要求客户端与域控的时间偏差不超过 5 分钟,超时的直接表现是登录报"时钟偏差太大"、访问共享被拒。对外服务这边,HTTPS 会校验证书有效期,服务器时间跑快或跑慢,轻则客户端告警,重则接口签名校验全部失败。日志也跟着遭殃:几台机器时间不同步,排障时对不上时间线,方向都能判错。计划任务也受影响:按本地时间触发的任务,时区一错,该跑的没跑,不该跑的跑了。
怎么检查
命令行执行 w32tm /query /status,看"源"和"最后一次成功同步的时间";w32tm /query /peers 看配置的上游列表。想看本机与某台机器的实际偏差,用 w32tm /stripchart /computer:目标IP,输出里的偏移量一目了然。同步失败的原因,事件查看器里 Microsoft-Windows-Time-Service 的专属日志会自己说。命令报"服务尚未启动"时,先 sc config w32time start= auto 再 net start w32time。
域环境的同步链路
加了域的机器不要手工指定上游,时间是从域控逐级下发的:客户端执行 w32tm /config /syncfromflags:domhier /update 回归域层级即可,真正的时间源在域根的 PDC 模拟器上,由它对外同步。给成员机手工指定外网源,反而会与域控产生偏差,Kerberos 报错更多。
独立机器怎么配
没有域的机器手动指定上游并立即生效:
w32tm /config /manualpeerlist:"time.windows.com" /syncfromflags:manual /update
net stop w32time
net start w32time
w32tm /resync
云服务器还有一层虚拟化时钟:宿主机的时间注入可能覆盖系统设置,时间频繁漂移的机器,先到控制台确认时间同步开关的状态,再动系统内的 w32tm。
时区是另一回事
时间同步不等于时区正确:tzutil /g 查看当前时区,tzutil /s "China Standard Time" 设置为北京时间。时区错了,同步再准显示也是错的。把 w32tm /query /status 加进巡检清单,偏差超过秒级就处理,别等业务报错才发现。