为什么我的 Ubuntu Server VPS 上的时间乱了?

为什么我的 Ubuntu Server VPS 上的时间乱了?

一个月前,我的 VPS 上的大量服务停止工作。经过大约一个小时的折腾,我发现时间冻结了。我猜想这是某种虚拟化错误,重新启动很快就解决了问题。

但是,今天我尝试运行我的 S3 备份,由于时间错误导致 SSL 失败。检查时间时我得到:

Current default timezone: 'Europe/London'
Local time is now: Sat Jul 11 22:03:02 BST 2009.
Universal Time is now: Sat Jul 11 21:03:02 UTC 2009.

tim@vps:~$ sudo ntpdate ntp.ubuntu.com
11 Jul 22:03:30 ntpdate[3901]: step time server 91.189.94.4 offset -14404.833448 sec

现在我在英国,时间显然刚刚过了 18:03。

我尝试手动设置日期:

sudo date +%T -s "18:03:30"

当我再读它时,它并没有改变

我把什么事情搞砸了?

编辑:

我已经跑过:

tim@vps:/var/log$ sudo hwclock --utc
Cannot access the Hardware Clock via any known method.
Use the --debug option to see the details of our search for an access method.
tim@vps:/var/log$ sudo hwclock --localtime
Cannot access the Hardware Clock via any known method.
Use the --debug option to see the details of our search for an access method.
tim@vps:/var/log$ sudo hwclock --show
Cannot access the Hardware Clock via any known method.
Use the --debug option to see the details of our search for an access method.

再次编辑:

我已经重新启动它了,但情况仍然一样。

还:

tim@vps:~$ sudo hwclock --debug --show
hwclock from util-linux-ng 2.13.1
hwclock: Open of /dev/rtc failed, errno=2: No such file or directory.
No usable clock interface found.
Cannot access the Hardware Clock via any known method.

答案1

更新:我对 xen 一无所知。但是有很多页面在那里讨论你的情况。

以下是我发现的东西:

默认情况下,XenVM 的时钟与托管它们的 XenEnterprise Server 同步,并将忽略 ntp 守护程序(如果正在运行)发出的调整时间的请求。如果您希望 XenVM 拥有独立的时钟,请登录其文本控制台并发出命令

echo 1 > /proc/sys/xen/independent_wallclock

然后运行 ​​NTP 守护程序。

要恢复默认设置,请发出命令

echo 0 > /proc/sys/xen/independent_wallclock

更新前:这可能是虚拟化问题。你用的是什么虚拟化软件?主机上的时间设置是什么?

答案2

首先想到的是,您配置了哪个时区?

我想到的第二件事与硬件时钟设置有关 - 您在硬件中使用 UTC 还是本地时间?大多数安装建议在硬件中使用 UTC 时间,然后系统将根据时区进行调整,尽管也可以选择相反的做法,让系统和硬件时钟都采用本地时间。这可能会导致偶尔的混乱。

对于 Linux,您可以尝试使用时钟(8)程序,它有选项可以将系统时间设置为硬件时钟,也可以将硬件时钟设置为系统时间。是的,你应该能够通过日期(1)命令,但您最好使用此命令。

我还想考虑使用全球 NTP 池与供应商提供的池。您可以随时通过指向 pool.ntp.org 来使用它。

答案3

如果您指的是 Xen VPS,那么时钟通常由 dom0 特权域管理,我认为托管服务提供商会负责管理。只要 dom0 有正确的时间和/或正在运行 NTP 守护程序以保持系统时间同步,任何 domU 都不需要运行 ntpd 本身。

我有几个 Xen 服务器,我只在 dom0 上运行 ntpd,所有 domU 虚拟机都有正确的时间。如果您实际上使用的是 Xen VPS,我猜想托管提供商在机器本身的时间方面存在问题。我知道在大多数 Xen 文档中,实际上建议将 /sbin/hwclock 清零为空文件,因为如果它实际上由于虚拟化而尝试直接与硬件时钟交互,它将在启动时导致问题。

答案4

尝试 dpkg-reconfigure tzdata 以确保它设置为 utc。另外,检查您是否安装了 ntpd,并将其指向 pool.ntp.org 的一组 ntp 服务器。

相关内容