0

我正在使用带有 Adafruit Ultimate GPS 帽子的运行 Buster 的 Raspberry Pi。我试图让 Chrony 进行温度补偿。我已修改 chrony.conf 文件以包含。

# Uncomment the following line to turn logging on.
log measurements refclocks statistics tempcomp tracking
tempcomp /sys/class/hwmon/hwmon0/temp1_input 30 26000 0.0 0.000183 0.0
#tempcomp /sys/class/hwmon/hwmon0/temp1_input 30 /var/log/chrony/tempcomp.log

系统当前每 30 秒将测量值添加到 tempcomp.log 文件中。但是,如果我启用上面的第二个(注释掉的)tempcomp 行,chrony 在重新启动时会因错误而死

Sep  6 12:31:45 rpi-tick2 chronyd[24713]: chronyd version 3.4 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +SECHASH +IPV6 -DEBUG)
Sep  6 12:31:45 rpi-tick2 chronyd[24713]: Frequency 23.662 +/- 0.165 ppm read from /var/lib/chrony/chrony.drift
Sep  6 12:31:45 rpi-tick2 chronyd[24713]: Fatal error : Could not read tempcomp point from /var/log/chrony/tempcomp.log
Sep  6 12:31:45 rpi-tick2 chronyd[24711]: Could not read tempcomp point from /var/log/chrony/tempcomp.log

我相信这是因为 tempcomp.log 文件有类似的条目

===========================================
   Date (UTC) Time        Temp.       Comp.
===========================================
2021-09-06 17:40:47  5.2095e+04  4.7754e+00
2021-09-06 17:41:17  5.2582e+04  4.8645e+00
2021-09-06 17:41:47  5.2582e+04  4.8645e+00
2021-09-06 17:42:17  5.3069e+04  4.9536e+00
2021-09-06 17:42:47  5.2582e+04  4.8645e+00

chrony 期待类似的东西

20000 1.0
21000 0.64
22000 0.36
23000 0.16
24000 0.04

并按温度而不是采样时间排序。

所以好像我在某个地方错过了一步。

此外,一旦设置完成,这是一个动态过程,在我们进行时添加新数据点,还是我们停止收集数据并仅使用静态表来补偿临时?

感谢您的任何见解。

4

1 回答 1

0

我认为您必须手动创建一个 chrony.tempcomp 文件,可能是通过分析 tempcomp.log 文件。它们是单独的文件。然后像这样指定 chrony.tempcomp 文件: tempcomp /sys/class/hwmon/hwmon0/temp2_input 30 /etc/chrony.tempcomp

于 2021-10-12T06:44:17.607 回答