【发布时间】:2023-04-03 14:42:01
【问题描述】:
我试图弄清楚 ntpd(来自busybox)是如何工作的。 为了测试,我正在运行以下场景:
- 使用
date -s将日期/时间设置为任意日期/时间(例如2000-01-01 00:00:00); - 运行命令
ntpd -N -p <server_address>启动守护进程。之后,日期/时间同步成功; - 再次使用
date -s将日期/时间更改为第一步中使用的相同(即2000-01-01 00:00:00);
在那之后,我一直期待日期/时间会再次同步,但这不会发生,即使我等待了几个小时。
我的问题是:我对 ntpd 行为的理解是否正确?第三步后是否应该自动重新同步日期/时间?如果没有,我应该怎么做才能重新同步日期/时间?
【问题讨论】:
-
这超出了允许的 1000 秒校正窗口(来自内存)。尝试进行较小的更改,看看是否符合预期。第一次同步是用
-g或等效标志调用的,但 ntp 期望将时钟保持在 500PPM 以内,因此没有第三次更正。 -
@user3788685 我尝试了一个较小的更改(大约 5 分钟),我又等了几个小时,但时间没有重新同步。
-
假设busybox版本支持该完整命令,您能否显示
ntpq -pcrv的输出。我们需要在ntp正常运行时查看它的状态,一旦你改变时间。 -
@user3788685 不幸的是我的嵌入式系统不支持这个调用。