我有一台电脑直接连接到带有 PPS 信号的 GPS 时钟,该时钟将时钟精度设置为 5 µs (!) 或更低(在 NTP 中显示为普通服务器)。
现在我想测量内部软件时钟有多差。因此,我正在寻找一种选项来实际轮询服务器,不设置时间,而是让它停止。
我可以在 ntp.conf 文件中将服务器标记为 noselect,但 ntpd 将不会写入 loopstats 文件。
如何让 ntpd 将带有偏移量的 loopstats 文件写入服务器,但实际上不设置时间?
谢谢你!
答案1
命令ntpdate
行工具提供了-q
(query) 选项,用于查询远程 NTP 服务器并显示与本地时钟的偏移量。例如:
$ ntpdate -q us.pool.ntp.org
server 216.93.242.12, stratum 2, offset 0.004806, delay 0.04530
server 72.26.217.210, stratum 2, offset 0.003129, delay 0.13052
server 173.203.202.87, stratum 2, offset 0.006828, delay 0.08769
2 Feb 06:32:54 ntpdate[61498]: adjust time server 216.93.242.12 offset 0.004806 sec
这里最有趣的数据是最后的结果:offset 0.004806 sec
。如果这是您最感兴趣的指标,那么您应该已经准备好了。它没有提供文件的详细程度loopstats
,但应该会有所帮助。
答案2
您可以使用ntpq
查询时间服务器而不调整时钟。使用 cron 安排查询时间,并将输出写入日志文件。