NTP 时间服务器配置《二》通过ntpdate直接同步时间

小菜鸟 2017-01-02

为了避免主机时间因为长期运作下所导致的时间偏差,进行时间同步(synchronize)的工作是非常必要的。Linux系统下,一般使用ntp服务器来同步不同机器的时间。一台机器,可以同时是ntp服务器和ntp客户机。在网络中,推荐使用像DNS服务器一样分层的时间服务器来同步时间。

 

NTP同步方式在linux下一般两种:

 

(1)使用ntpdate命令和cron组合直接同步时间

 

(2)使用ntpd服务平滑同步时间

 

 

NTP 时间服务器配置《二》通过ntpdate直接同步时间

 

 

(1)检查是否安装NTP服务

rpm -qa | grep ntp

 

(2)安装NTP软件(如果已安装则忽略)

yum -y install ntp

 

(3)同步时间,命令格式如下:# ntpdate [ntp服务器域名或IP]

[root@bogon Desktop]# ntpdate 1.cn.pool.ntp.org

30 Dec 14:46:28 ntpdate[7503]: adjust time server 182.92.12.11 offset 0.062906 sec

 

至于ntp服务器可以到http://www.pool.ntp.org NTP的官方网站查找

server 1.cn.pool.ntp.org

server 3.asia.pool.ntp.org

server 2.asia.pool.ntp.org

server 0.asia.pool.ntp.org

server 1.asia.pool.ntp.org

 

如果出现上面的内容说明,证明同步成功了。但这样的同步,只是强制性的将系统时间设置为ntp服务器时间。如果cpu tick有问题,只是治标不治本。所以,一般配合cron命令来进行定期同步设置。比如,在crontab中添加定时任务:

*/10 * * * * root ntpdate 1.cn.pool.ntp.org;/sbin/hwclock -w

这样,会每10分钟同步一次时间,并写入硬件时间

 

(4)添加定时任务

[root@bogon Desktop]# vi /etc/crontab

 

NTP 时间服务器配置《二》通过ntpdate直接同步时间

说明:

定时任务的基本格式为

* * * * * [user-name] [command to be executed]

第一个*表示分钟,用0~59表示,用*或者*/1表示每分钟;

第二个*表示小时,用0~23表示,0表示0点,也即24点;

第三个*表示日期,用0~31表示;

第四个*表示月份,用1~12表示;

第五个*表示星期,用0~6表示,0表示星期日;

上面的五个参数中,都可以使用*表示每分钟、每小时、每天,每周。

user-name 表示执行该命令的用户

command表示要定时执行的内容。

 

(5)重启crond服务

service crond restart

 

(6)查看任务日志

 

可以通过tail -f /var/log/cron命令查询日志定时任务执行情况

[root@bogon Desktop]# tail -f /var/log/cron

Dec 30 15:02:05 bogon crond[9203]: (CRON) INFO (running with inotify support)

Dec 30 15:03:01 bogon CROND[9343]: (root) CMD (ntpdate 1.cn.pool.ntp.org;/sbin/hwclock -w)

Dec 30 15:04:01 bogon CROND[9527]: (root) CMD (ntpdate 1.cn.pool.ntp.org;/sbin/hwclock -w)

 

 

注意:使用该方法,需要关闭ntp服务,因为启动服务器,端口会被服务端占用,就不能手动同步时间了。否则会报错:

[root@bogon Desktop]# ntpdate 1.cn.pool.ntp.org

30 Dec 15:13:37 ntpdate[11548]: the NTP socket is in use, exiting

 

 

相关推荐

FruitDrop / 0评论 2011-10-25
86981538 / 0评论 2014-07-24