ntp 的时间同步机制不是这么用的。 一般用法是在系统启动阶段 ntpdate 强行同步一次,然后启动 ntpd 在后台慢慢维护时间便宜。开着 ntpd 的时候,ntpdate 会拒绝运行。 尤其时在服务器环境里,因为有不少服务软件假设时间是平滑、单向进行的,如果在服务软件运行过程中突然发生时间跳变,尤其是回拨,软件的逻辑就会出错。所以正确的用法是 ntpd 在后台持续运行,跟上游时间源对比,如果偏移量超出阈值,就小幅度调节内核时钟的进行速度来纠偏。这个调节是平滑的,而且如果本机时间超前了也不会回拨,只会减慢进行速度。而启动阶段强行 ntpdate 同步一次的原因就是如果偏差太大,ntpd 的缓慢纠偏机制不给力,而启动时 ntpdate 会安排在大多数业务服务之前启动,这时候任何时间跳变都无所谓。