date +%T --set="12:19:06"
12:19:06
date
Mon Nov 26 12:37:32 SAST 2012
date 112613232012
Mon Nov 26 13:23:00 SAST 2012
date
Mon Nov 26 13:42:27 SAST 2012
我尝试过此命令的多种不同形式,但似乎都不起作用。更改此计算机服务器上作为 VM 运行的日期不起作用。
我们的消息日志显示类似这样的消息
ntpd[3496]: 时间校正 -1098 秒超出合理限制 (1000);请手动将时钟设置为正确的 UTC 时间。
我们的服务器现在大约需要 20 分钟。
好像我们的服务器已经有几天没有正确更新时间了。
11 月 22 日 19:29:23 主机名 ntpd[1818]: 时间重置 -998.577519 秒 11 月 22 日 19:32:34 主机名 ntpd[1818]: 已同步至 LOCAL(0),层数 10 11 月 22 日 19:33:39 主机名 ntpd[1818]: 已同步至 41.134.20.28,层数 1 11 月 22 日 19:52:30 主机名 ntpd[1818]: 时间重置 -998.992426 秒 11 月 22 日 19:55:47 主机名 ntpd[1818]: 已同步至 LOCAL(0),层数 10 11 月 22 日 19:56:53 主机名 ntpd[1818]: 已同步至 41.134.20.28,层数 1 11 月 22 日 20:13:04 主机名 ntpd[1818]: 时间重置 -999.374412 秒 11 月 22 日 20:16:40 主机名 ntpd[1818]: 已同步至 LOCAL(0),层数 10 11 月 22 日 20:17:44 主机名 ntpd[1818]: 已同步至 41.134.20.28,层数 1 11 月 22 日 20:32:02 主机名 ntpd[1818]: 时间重置 -999.716832 秒 11 月 22 日 20:35:28 主机名 ntpd[1818]: 已同步至 LOCAL(0),层数 10 11 月 22 日 20:36:16 主机名 ntpd[1818]: 已同步至 41.134.20.28,层数 1 11 月 22 日 20:56:39 主机名 ntpd[1818]:时间校正 -1000 秒超出合理限制 (1000);请手动将时钟设置为正确的 UTC 时间。
答案1
http://www.linuxforum.com/threads/2154-Linux-ntp-time-Offset-on-Xen-VM-incorrect
经过大量搜索,我发现默认情况下,虚拟机的时钟与控制域上运行的主机时钟同步,并且无法独立更改。这让我很惊讶,因为 NTP 仍然已配置,并且似乎能够同步时钟。
将以下行添加到您的 /etc/sysctl.conf 文件中
# Allow the VM to update it's own clock, and do not use the DOM host clock.
xen.independent_wallclock=1
然后重启网络服务
/etc/init.d/network restart #for redhat, centos, fedora
/etc/init.d/networking restart #debian, ubuntu
现在你可以设置日期date -s ...
答案2
对于 Mageia 用户及其父母(RedHat、Mandrake、Mandriva),我们将使用以下命令安装 ntp 和 ntp-client urpmi
:
# urpmi ntp ntp-client
然后我们将启动该服务并使其在重启时自动启动。
# systemctl start chronyd.service
# systemctl enable chronyd.service
现在我们检查 timedatectl 是否启用了基于 NTP 的网络时间同步:
# timedatectl status
Local time: Wed 2016-12-07 13:39:04 EET
Universal time: Wed 2016-12-07 11:39:04 UTC
RTC time: Wed 2016-12-07 11:38:56
Timezone: Europe/Bucharest (EET, +0200)
NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
DST active: no
Last DST change: DST ended at
Sun 2016-10-30 03:59:59 EEST
Sun 2016-10-30 03:00:00 EET
Next DST change: DST begins (the clock jumps one hour forward) at
Sun 2017-03-26 02:59:59 EET
Sun 2017-03-26 04:00:00 EEST
# date
Wed Dec 7 13:39:11 EET 2016
# timedatectl set-timezone Europe/Bucharest
# date
Wed Dec 7 13:39:48 EET 2016
#
如果不启用 NTP 同步,时区/时间将不会改变。
现在我们将启用基于 NTP 的网络时间同步并设置新的时区:
# timedatectl set-ntp 1
# timedatectl set-timezone Europe/Bucharest
# date
Wed Dec 7 10:43:33 EET 2016
# timedatectl status
Local time: Wed 2016-12-07 10:43:59 EET
Universal time: Wed 2016-12-07 08:43:59 UTC
RTC time: Wed 2016-12-07 08:43:59
Timezone: Europe/Bucharest (EET, +0200)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: no
Last DST change: DST ended at
Sun 2016-10-30 03:59:59 EEST
Sun 2016-10-30 03:00:00 EET
Next DST change: DST begins (the clock jumps one hour forward) at
Sun 2017-03-26 02:59:59 EET
Sun 2017-03-26 04:00:00 EEST