![Dovecot 时间同步问题,由于 ntp 损坏,需要将其回退](https://linux22.com/image/565859/Dovecot%20%E6%97%B6%E9%97%B4%E5%90%8C%E6%AD%A5%E9%97%AE%E9%A2%98%EF%BC%8C%E7%94%B1%E4%BA%8E%20ntp%20%E6%8D%9F%E5%9D%8F%EF%BC%8C%E9%9C%80%E8%A6%81%E5%B0%86%E5%85%B6%E5%9B%9E%E9%80%80.png)
我有一个 postfix MTA,带有 dovecot,用于 pop3/imap 等。服务器的 RTC 很糟糕,每个月快 10 分钟左右,但在处理日志时这很烦人,因为人们依赖电子邮件中的时间戳。过去两年我一直使用 ntp 处理这个问题,但我刚刚注意到它在大约 3 个月前停止工作了。
我知道如果我让时间倒流,我会导致这次失败在 dovecot 上。解决这个问题最快的方法是什么?我在 google 搜索中看到过很多关于这个问题的提及,我发现最接近的方法是重新启动服务器,而我正试图避免这样做(这是一个旧的 POS,这里没有钱投入邮件服务器)
答案1
运气还不算太差。如果我没记错的话,它会一直失败,直到时间偏移小于 5 秒。如果我理解正确的话,你的时间现在大约偏离了 30 分钟,如果不是这样,请确认一下。我会做的是安排夜间停机时间,然后使用 at 作业或其他东西来更改时间,然后等待。根据您运行 dovecot 的方式(哪个操作系统、如何启动/监控等),它会不断尝试启动,直到成功。
如果一夜之间减少 30 分钟不是一个选择,您可以尝试逐步增加时间,但最终,您别无选择,只能等待,或者像您在谷歌搜索中指出的那样重新启动。我首先想到的是,我认为您可以每晚补上 5 分钟,持续一周,然后就大功告成了。但真正的(长期)解决方案是您需要找到一种更好的方法来管理该机器上的时间漂移。
巧合的是,当年布什政府改变了夏令时遵守方式,恰逢每年的这个时候,这对我产生了影响。
答案2
您可以传递ntpd
该-x
选项,这将导致时间回溯(时钟运行速度快 0.05% 或慢 0.05%)而不是倒退。如果您的时钟慢了 30 分钟,则需要大约 40 天的时钟运行速度才能赶上。
答案3
Ntp 没有停止工作。对我来说,它目前运行良好。因此,如果 ntp 多年来一直为您服务,您真的应该修复它。
你只有两个选择
- 更换服务器。你不会这么做的,所以...
- 同步时间。这是通过 ntp 作为基于网络的可靠来源完成的。否则,您需要其他可靠的时间来源。这可以是 DVB 接收器、GPS 系统、GSM 提供商、DCF77(欧洲)WWV(美国)无线电信号或类似的东西。