从昨天(7 月 30 日)开始,我在 /var/log/syslog 中有以下内容
Dec 16 22:54:05 omap ntpdate[432]: step time server 91.189.94.4 offset 12052648.821465 sec
Run Code Online (Sandbox Code Playgroud)
ntpdate 91.189.94.4 从 7 月 30 日到 12 月 16 日“更正”了我的时钟!根据http://www.pool.ntp.org/scores/91.189.94.4,该服务器的关闭时间不超过 2 毫秒。
现在,我确实有一个脚本,它date在系统启动时调用该命令,以便以大约 1 秒的精度设置时钟。粗时间是从本地网络中读取的,并被date调用来设置时间。由于系统没有实时时钟,并且 NTP 可能无法使用 Internet 连接,因此我必须按照这些方式做一些事情。
我不确定 Linux 在没有可用时钟的情况下如何猜测初始时间,但我观察到它可能非常错误(这是合理的)。我对发生的事情的唯一想法是:
ntpdate 开始与 NTP 服务器通信,确定 3 月 15 日与实际日期相比有多大错误ntpdate 确定时钟慢了 12052648s,并添加了更正,假设时钟仍然在 3 月 15 日坦率地说,我不太熟悉 NTP 的工作原理。以上合理吗?还能有别的解释吗?
我不确定你的时钟是如何进入它所处的状态的,但我可以建议你date尽可能删除调用命令的脚本吗?
在我使用过的大多数系统上,在启动时设置系统时钟的常用方法是:
ntpd与-g同步的时钟。 -g是一个新的选项,它让 ntpd 将时钟调整到任何时间——如果您的版本ntpd不支持该 fkag,您将ntpdate -b some.time.server在启动 NTP 守护进程之前运行
如果您的系统太旧以至于它正在做与此完全不同的事情,那么它可能也太旧了以至于不受支持,所以我会毫不犹豫地将启动脚本更改为更加理智......
| 归档时间: |
|
| 查看次数: |
266 次 |
| 最近记录: |