Linux vps 中使用ntp包自动校准时间

很多VPS安装完成后,过了很久才发现时间不准这个问题。有些是由于本身就没有调整好准确的时间,而有些则是因为时差问题导致连日期都有错误。本文将讲解ntpdate这一网络自动校时工具的安装与使用方法。

其实Linux中有个ntp包可以自动校准时间,并且非常好用。

Debian系统安装NTP校时包:

1 apt-get install ntpdate

CentOS系统安装NTP校时包:

1 yum install ntp

校时命令:

1 ntpdate cn.pool.ntp.org

如果想每隔一定时间自动校时,只需将上面的命令加入至Cron就行了:

1 00 12 * * * /sbin/ntpdate cn.pool.ntp.org

* cn.pool.ntp.org是ntp网络授时组织的中国授时源

————-

如果出现ntpdate: step-systime: Operation not permitted,说明vps不允许修改时间,可以使用:

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime


附 OpenVZ VPS不能修改时间的母鸡解决办法

因为系统架构的原因,OpenVZ的linux vps默认是不允许在客户在vps自行修改系统时间,当执行修改时间的操作时,会出错

[root@root ~]# date -s 10:22:33
date: cannot set date: Operation not permitted

解决办法:

1、在OpenVZ主服务器上打开ntp

yum install ntp

2、给客户vps开启修改系统时间的权限:

vzctl set (veid) --capability sys_time:on --save

如果执行这个命令后报错:

WARNING: Some of the parameters could not be applied to a running container.
        Please consider using --setmode option

请先停止该vps后再执行

vzctl stop (veid)
vzctl set (veid) --capability sys_time:on --save
vzctl start (veid)

这样客户就可以自己在vps里修改系统时间了:

[root@root ~]# date -s 11:17:40

Wed Feb 23 11:17:40 CST 2011