在 Xen 虚拟机下修改系统当前时间
Xen 虚拟机默认不允许不同的虚拟机使用不同的系统时间,因此所有虚拟机的系统时间都会同宿主机的系统时间严格同步,用 date 命令修改虚拟机系统时间时虽然提示成功但其实系统时间还是没变。若有独立修改 Xen 虚拟机的特殊需要,可以通过如下方法进行:
1. 在 Xen 虚拟机的 root 提示符下输入命令:
echo 1 < /proc/sys/xen/independent_wallclock
或
sysctl xen.independent_wallclock=1
以启用虚拟机独立的系统时间
2. 现在用 date -s "目标日期时间" 命令应该就可以设置系统时间了
这样的设置在虚拟机重启以后就失效了,若要使该设置永久生效,可以进行如下改动之一:
修改 /etc/sysctl.conf 文件,增加如下内容:
# Set independent wall clock timexen.independent_wallclock=1
在虚拟机启动时的 kernel 命令行中加入选项 independent_wallclock=1
另外发现一个非常怪异的现象,如果配置为xen时间和真实主机时间同步的话。如果xen时间快了几分钟,在更改主机时间后xen时间不会马上同步为正确的时间,表现为时间停止增长,等本地时间和主机一致后才会继续时间的增长。
原文