为什么我的Ubuntu服务器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。

我试过手动设置date:

 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. 

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

这是我发现的东西:

默认情况下,XenVM的时钟同步到承载它们的XenEnterprise服务器,并将忽略ntp守护程序(如果正在运行)调整时间的请求。 如果您希望XenVM具有独立的时钟,请login到其文本控制台并发出命令

 echo 1 > /proc/sys/xen/independent_wallclock 

然后运行一个NTP守护进程。

要还原为默认值,请发出命令

 echo 0 > /proc/sys/xen/independent_wallclock 

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

首先想到的是,你configuration了什么时区?

第二个想到的事情与你的硬件时钟设置有关 – 在硬件中使用UTC还是在本地时间? 大多数安装build议在硬件中使用UTC时间,然后系统将按时区进行调整,但有相反的选项可供select,系统和硬件时钟均可在当地时间使用。 这可能会导致偶尔的混淆。

对于linux,你可以尝试使用hwclock(8)程序,该程序可以select将系统时间设置为硬件时钟,并将硬件时钟设置为系统时间。 是的,你应该可以通过date(1)命令设置时间,但是最好用这个。

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

如果你正在讨论一个Xen VPS,那么通常这个时钟是由dom0特权域来pipe理的,我假设托pipe服务提供商会处理这个域。 只要dom0具有正确的时间和/或正在运行NTP守护进程以保持系统时间同步,则不应该需要任何domU来运行ntpd本身。

我有几个Xen服务器,我只在dom0上运行ntpd,所有的domU虚拟机都有正确的时间。 如果你实际上是一个Xen VPS的话,我会猜测主机提供商在机器本身的时间有问题。 我知道在大多数Xen文档中,实际上build议将/ sbin / hwclock作为一个空文件清零,因为如果由于虚拟化而直接与硬件时钟进行交互,会导致引导时出现问题。

如果它是基于Xen的系统,您可以设置independend_wallclock = 1并使用ntpdpipe理自己的时间。

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

我在GoDaddy虚拟服务器上遇到了这个问题。 出于某种原因,Virtuozzo(他们的软件)喜欢控制时间,这是错误的时间。 我最终搬到了另一家提供商,因为GoDaddy不会修复他们的时钟。

我的VPS提供商再次回到我身边,说他们(主机)似乎有问题。 所以我会留给他们理清。

更新:

托pipe服务提供商已经接受了,他们认为这是一个硬件问题,可能是BIOS电池。 当主机启动的时钟是错误的,显然他们不能改变时间,而不locking所有虚拟机!