原文地址:http://blog.51yip.com/server/1474.html


一,用ntpdate从时间服务器更新时间

如果你的linux系统根本没有ntpdate这个命令

yuminstall ntp 

安装完了之后,你不要做什么配置,也不需要,直接测试一下

[root@localhost~]# ntpdate time.nist.gov 

22 Oct21:11:43 ntpdate[5014]: adjust time server 207.200.81.113 offset -0.018788sec 

如果出去上面的内容说明,同步成功了。然后在crontab里面加上以下内容。

*/10 * * ** ntpdate time.nist.gov   #域名或IP 

每隔十分钟同步一次。推荐几个时间服务器。

time.nist.gov

time.nuri.net

0.asia.pool.ntp.org

1.asia.pool.ntp.org

2.asia.pool.ntp.org

3.asia.pool.ntp.org

二,用ntp搭建自己的时间服务器

上面我们是利用别人的时间服务器来同步时间,这些时间服务器都是比较权威的。当我们自己搭建时间服务器就不用crontab来定时去跑。

1,安装时间服务器ntp

yuminstall ntp 

2,配置ntp

查看复制打印?

[root@localhost~]# cat /etc/ntp.conf |awk '{if($0 !~ /^$/ && $0 !~ /^#/) {print $0}}' 

restrictdefault ignore   //默认不允许修改或者查询ntp,并且不接收特殊封包 

restrict127.0.0.1        //给于本机所有权限 

restrict192.168.1.0 mask 255.255.255.0 notrap nomodify //给于局域网机的机器有同步时间的权限 

servertime.nist.gov prefer      //设置时间服务器,加prefer表示优先 

server0.asia.pool.ntp.org 

server1.asia.pool.ntp.org 

server2.asia.pool.ntp.org 

server  127.127.1.0     # local clock 

fudge   127.127.1.0 stratum 10 

driftfile/var/lib/ntp/drift 

keys/etc/ntp/keys 

3,启动 ntp

[root@localhost~]# /etc/init.d/ntpd start 

4,查看并测试

查看复制打印?

[root@localhost~]# netstat -upnl |grep ntpd   //查看时程 

 

[root@localhost~]# ntpq -pn    //查看同步的服务器IP 

 remote           refid      st t when poll reach   delay  offset  jitter 

============================================================================== 

 50.77.217.185  .INIT.          16 u    -  64    0    0.000   0.000   0.000 

 202.90.158.4   .INIT.          16 u    -  64    0    0.000   0.000   0.000 

 202.71.100.89  .INIT.          16 u    -  64    0    0.000   0.000   0.000 

 202.134.1.10   .INIT.          16 u    -  64    0    0.000   0.000   0.000 

*127.127.1.0     .LOCL.          10 l  18   64  377   0.000    0.000   0.001 

 

[root@localhost~]# ntpstat   //同步的结果 

synchronisedto local net at stratum 11 

 time correct to within 12 ms 

 polling server every 512 s 

remote:即NTP主机的IP或主机名称。注意最左边的符号,如果由“+”则代表目前正在作用钟的上层NTP,如果是“*”则表示也有连上线,不过是作为次要联机的NTP主机。

refid:参考的上一层NTP主机的地址

st:即stratum阶层

when:几秒前曾做过时间同步更新的操作

poll:下次更新在几秒之后

reach:已经向上层NTP服务器要求更新的次数

delay:网络传输过程钟延迟的时间

offset:时间补偿的结果

jitterLinux系统时间与BIOS硬件时间的差异时间

推荐第一种方法,虽然搭建个时间服务器,还是比较简单的,但是我觉得没有这个必要。如果用别人的时间服务器,每隔10分钟同步一次,可以精确到毫秒。