由于初次使用hyper-v架构的VPS而且买前要指定装windows还是centos系统,因为木有重装的面板,对于用惯debian的我真是折磨,操作过程中遇到各种小问题。问客服直接一句只懂winows环境,让你装WIN你非要装linux。好吧centos只能自己摸索了。
由于hyper-v是微软的一款虚拟化产品,早先是不支持linux的,又因为debian的公司化运营,使debian进入高速发展阶段,就连google也抛弃linux定制而转入debian开发阵营,这让微软感到了一些的压力,于是乎微软拉上centos,这就是为什么hyper-v只支持centos,而不支持其它linux衍生版本了,而且支持的还不是那么靠谱。吐槽完,那就来看正题吧。
正题:hyper-v架构的centos5.5 VPS 装完lnmp时间不同步,导致网站某些功能无法使用。
网上找了各种方法均告失败。然后自己又仔细找了一些文档终于搞定了,泪奔啊。
linux的时间管理很奇怪他分为系统时间和硬件时间还细分成UTC、CSFT时间。
硬件时间从根本上讲是CMOS时钟
linux查看硬件时间:hwclock --show
linux查看系统时间:date -R
centos VPS的时间及时区同步。
系统时间部分:
1. 编辑时区配置文件:vi /etc/sysconfig/clock
ZONE="Asia/Shanghai"
UTC=false #把UTC设置为false关闭状态
ARC=false
2.运行如下命令
#删除默认配置
rm -rf /etc/localtime
#重新指定配置
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#同步系统时间
ntpdate -u pool.ntp.org
硬件时间部分:
#将硬件时间调整成与目前的系统时钟一致。
hwclock --systohc
或clock --systohc
#强制系统时间写入CMOS中防止重启失效
hwclock -w
或clock -w
以上步骤虽然成功了但是我这hyper-v架构的centos系统时间走的不准,1天能快几分钟的样子。
用crontab来同步一下时间即可解决。
#编辑计划任务表
vi /etc/crontab
#表中最后添加下面这行内容
30 5 * * * root /usr/sbin/ntpdate -u pool.ntp.org && /sbin/clock --systohc
#每天5点半同步时间,clock --systohc是硬盘时间同步系统时间的意思。