当你修改了配置信息,你必须重新启动NTP进程以取得及时的效果.
开始配置NTP,用下面的命令:
[root@bigboy tmp]# chkconfig ntpd on
启动,停止,重启NTP,用下面的命令:
[root@bigboy tmp]# service ntpd start[root@bigboy tmp]# service ntpd stop[root@bigboy tmp]# service ntpd restart
测试和解决NTP问题
在配置和启动NTP后,你应该测试以确定NTP是否在工作,参考下面的指引去检测NTP的工作.
检查NTP运行
使用下面的命令检查NTP服务是否运行
[root@bigboy tmp]# pgrep ntpd
这时你应该能得到一个进程ID.
同步初始化
如果本地主机的时间和主时间服务器的差距很大,你的NTP的进程可能会终止,并且在/var/log/messages 留下错误信息.你应该在同步服务器时间之前,运行ntpdate -u命令预先得道时间.不过ntpdate命令不会一直运行,你仍然需要运行ntpd后台进程去自动同步时间.
下面的范例中,服务器最初的时间是在午夜,然后同步时间到am 8:03.
先检查自己的服务器的时间[root@smallfry tmp]# dateThu Aug 12 00:00:00 PDT 2004[root@smallfry tmp]# ntpdate 命令在smallfry机器上运行了3次去同步192.168.1.100服务器的时间,不过它必须在ntpd进程停止的时候运行,
所以你要先停止ntpd,运行ntpdate,然后再运行ntpd.[root@smallfry tmp]# service ntpd stop[root@smallfry tmp]# ntpdate -u 192.168.1.100Looking for host 192.168.1.100 and service ntphost found&">nbsp;: bigboy.my-site.com12 Aug 08:03:38 ntpdate[2472]: step time server 192.168.1.100 offset 28993.084943 sec[root@smallfry tmp]# ntpdate -u 192.168.1.100Looking for host 192.168.1.100 and service ntphost found : bigboy.my-site.com12 Aug 08:03:40 ntpdate[2472]: step time server 192.168.1.100 offset 2.467652 sec[root@smallfry tmp]# ntpdate -u 192.168.1.100Looking for host 192.168.1.100 and service ntphost found : bigboy.my-site.com12 Aug 08:03:42 ntpdate[2472]: step time server 192.168.1.100 offset 0.084943 sec[root@smallfry tmp]# service ntpd start[root@smallfry tmp]# 现在时间改正过来了.[root@smallfry tmp]# dateThu Aug 12 08:03:45 PDT 2004[root@smallfry tmp]#
检定NTP同步
使用ntpq命令查看与您同步的服务器.它提供你一份时间服务器配置清单,包括延误值(delay),偏差值(offset)和抖动值(jitter).为了能正确同步,延迟值和偏移值应该不为零,抖动值(jitter)应小于100 .
[root@bigboy tmp]# ntpq -p
这是命令输出的结果:
remote refid st t when poll reach delay offset jitter==============================================================================-jj.cs.umb.edu gandalf.sigmaso 3 u 95 1024 377 31.681 -18.549 1.572 milo.mcs.anl.go ntp0.mcs.anl.go 2 u 818 1024 125 41.993 -15.264 1.392-mailer1.psc.edu ntp1.usno.navy. 2 u 972 1024 377 38.206 19.589 28.028-dr-zaius.cs.wis ben.cs.wisc.edu 2 u 502 1024 357 55.098 3.979 0.333+taylor.cs.wisc. ben.cs.wisc.edu 2 u 454 1024 347 54.127 3.379 0.047-ntp0.cis.strath harris.cc.strat 3 u 507 1024 377 115.274 -5.025 1.642*clock.via.net .GPS. 1 u 426 1024 377 107.424 -3.018 2.534ntp1.conectiv.c 0.0.0.0 16 u - 1024 0 0.000 0.000 4000.00
Linux NTP客户端无法同步
下表的迹象表明你没有得到适当的同步,因为所有远程服务器的jitter值为4000,delay和reach值为0
remote refid st t when poll reach delay offset jitter =============================================================================LOCAL(0) LOCAL(0) 10 l - 64 7 0.000 0.000 0.008ntp-cup.externa 0.0.0.0 16 u - 64 0 0.000 0.000 4000.00snvl-smtp1.trim 0.0.0.0 16 u - 64 0 0.000 0.000 4000.00nist1.aol-ca.tr 0.0.0.0 16 u - 64 0 0.000 0.000 4000.00
可能的原因:
如果您使用的DNS名称做为NTP服务器时旧版本的的NTP包会工作不正常.在这样的情况下,您要使用的实际IP地址代替. 防火墙阻止访问NTP服务器.这可能是NTP服务器和它的时间源之间有防火墙软件如
iptables的限制. 在NTP客户
端的restrict字段
里面有notrust nomodify notrap的关键字.
Fedora Core 2的某些版本中除非NTP客户端的restrict字段里面删除notrust nomodify notrap的关键字,否则不能执行NTP同步.
在下面例子中,restrict字段只是客户端网络的定义而没有任何关键字:
#-- CLIENT NETWORK -------#restrict 172.16.1.0 mask 255.255.255.0 notrust nomodify notraprestrict 172.16.1.0 mask 255.255.255.0
Fedora Core 2 文件权限
所有的Fedora/RedHat的NTP后台进程要写临时文件到/etc/NTP这个目录.不幸的是,Fedora Core 2这个目录不允许保存临时文件.所以你要设定组,所有者等权限给NTP.
[root@bigboy tmp]# chown ntp:ntp /etc/ntp
如果你没有那样做,你会在/var/log/messages得到错误信息.
Aug 12 00:29:45 smallfry ntpd[2097]: can't open /etc/ntp/drift.TEMP: Permission denied