我正在运行一个分布式计算机设置,其中一台机器作为另一台机器的时间服务器,因此两台机器的同步精度达到几毫秒。
我关注了这个问题的答案: 如何设置本地 NTP 服务器?
我已经能够成功设置,但我想知道是否有办法查询 ntp 或任何其他程序并知道两台机器之间的时间差?
答案1
该命令ntpq -np
将输出有关您的 NTP 服务器与其同步的源之间的时间差异的信息(我不确定这是否正是您想要的)。如果您省略-n
参数(即ntpq -p
),它将显示主机名而不是 IP 地址(速度稍慢,因为它必须进行 DNS 查找)。
该命令ntpdate -q <address>
将输出有关您的机器与 中指定的时间源之间的时差的信息<address>
。-q
参数很重要,因为如果没有该参数,它将尝试将时间同步到指定的机器,而不仅仅是输出差异。如果以非 root 用户身份运行,ntpdate
您可能需要输入完整路径ntpdate
(例如)。/usr/sbin/ntpdate
(ntpq
应与 ntp 包一起安装,ntpdate
它是一个单独的包,因此如果尚未安装则必须安装它)