我怎样才能永久修复 Linux 中的日期同步问题?

我怎样才能永久修复 Linux 中的日期同步问题?

Ubuntu 7.10 服务器 i386 时钟/日期/时间无法保持同步。我可以查看它们的日志文件来了解时钟何时更改吗?为了临时修复,我在 /etc/cron.hourly 中创建了一个文件:

#!/bin/sh
ntpdate time.nist.gov

但是,这仍然会留下一小时的潜在未检查时间。是否有 cron.minutely?这仍然会留下一分钟的潜在未检查时间。我读过有关 CMOS 电池问题的文章,但如果这不能解决问题怎么办?我希望能够将其作为完全软件问题进行故障排除。

我的 squid 日志显示的日期可以追溯到 2005 年,当时的时钟发生了变化,而我的时间敏感的访问控制出现了偏差,最终允许用户在工作时间浏览被禁止的网站。

答案1

运行 ntpdate 的建议很好,但它只会拖延时间。更好的选择是安装 ntpd 并使用它来保持本地时钟同步,避免日志偏差。

使用 Ubuntu 你应该能够执行apt-get install ntp。这将安装 ntpdate 和 ntpd,将它们配置ntp.ubuntu.com为唯一服务器并同步时间。为了完整起见,你需要添加其他 NTP 服务器(例如0.pool.ntp.org1.pool.ntp.org2.pool.ntp.org)。

答案2

我昨天遇到了同样的问题,不过是在 Slackware 8 下。长话短说,我在谷歌上读了很多资料,最后才重新镜像了电脑。我的经理发给我关联但它没有解决我的问题。

我将本地时间改为 UTC 时间。我更改了时区,以便在两者中都使用正确的时区。

希望对你有帮助!

另外,你可以尝试这个:

ntpdate 0.pool.ntp.org
hwclock --systohc

答案3

我在 Debian Lenny 系统上也遇到了同样的问题(之前安装的是古老的 Ubuntu 7.04),原因是十年前主板上的一些芯片组有问题。这是我的计划任务解决方案;就我的目的而言,每天两次保持充分同步,然后每周一次同步并保存到硬件时钟(这在我的系统上非常稳定)。

把这个放进去/etc/cron.d/ntpsync

# /etc/cron.d/ntpsync: run ntpdate-debian twice daily, sync hwclock once weekly

# run at 11:23 (am & pm) (update system clock)
23 11,23        * * *   root    test -x /usr/sbin/ntpdate-debian && /usr/sbin/ntpdate-debian  2>&1 | logger -i

# run at 11:59pm fridays (update system clock & save to hwclock)
59 23   * * 5   root    test -x /usr/sbin/ntpdate-debian && test -x /etc/init.d/hwclock.sh && /usr/sbin/ntpdate-debian && /etc/init.d/hwclock.sh restart 2>&1 | logger -i

这使用标准定时任务设置时间和日期的语法,因此如果你想要那么精细的话,它可以变得非常详细。“记录器-i”在命令链的末尾将输出发送到系统日志计划任务伐木设施。

答案4

您可以为此设置一个 cron。

在 /etc/crontab 中添加行

* * * * * root ntpdate time.nist.gov > /dev/null

你可以通过以 root(或超级用户)身份输入来实现

echo '* * * * * root /usr/sbin/ntpdate time.nist.gov > /dev/null' >> /etc/crontab


先决条件:ntpdate 需要安装在虚拟机中

apt-get update apt-get install ntpdate

相关内容