2007年10月23日星期二

HP-UX上一步步配置NTP



上周一位朋友(网上昵称:小伙)告诉我博客(http://xiaophedap.cublog.cn)中的关于HP-UX下配置NTP的文章(http://blog.chinaunix.net/u/12718/showart_65555.html)有错误,抽空,做了如下的试验,按照以下方法,可以一步步地配置好NTP:


HP-UX上要实现时间同步,需要设置时间服务器和客户端,相关的进程是xntpd。

具体的配置文件为以下几个:
1. /etc/ntp.conf
2. /etc/ntp.drift 在client上自己建立,用作drift文件
3. /etc/rc.config.d/netdaemons

相关的执行文件:
/usr/sbin/xntpd

运行脚本
/sbin/init.d/xntpd {start|stop}


具体的配置步骤如下(两台机器:goodgirl和asogz01,用goodgirl做基准):
1. 配置两台机器的/etc/hosts文件
a. goodgirl的hosts文件如下
127.0.0.1 localhost loopback
15.70.146.115 goodgirl
15.70.146.113 asogz01
b. asogz01的hosts文件如下
127.0.0.1 localhost loopback
15.70.146.113 asogz01
15.70.146.115 goodgirl
2. 在两台服务器上编辑/etc/rc.config.d/netdaemons文件
设定如下:
export NTPDATE_SERVER=goodgirl
export XNTPD=1
export XNTPD_ARGS=
3. 修改/etc/ntp.conf文件
a. goodgirl(server)的/etc/ntp.conf文件配置如下
server 127.127.1.1
fudge 127.127.1.1 stratum 10
driftfile /etc/ntp.drift

说明:127.127.1.1表明同步本机的时间,一般来说,NTP服务器端作为其他客户机的时间基准,而它自己则使用自己的时间作为基准
b. asogz01(client)的/etc/ntp.conf文件配置如下
server goodgirl
driftfile /etc/ntp.drift
4. 两台主机上都生成/etc/ntp.drift文件
a. 生成/etc/ntp.drift文件
#touch /etc/ntp.drift
b. 修改该文件权限
#chmod 755 /etc/ntp.drift
5. 两台主机上启动NTP
a. goodgirl(server)上运行NTP
#/sbin/init.d/xntpd start
b. asogz01(client)上运行NTP(320秒以后再运行)
#/sbin/init.d/xntpd start
6. 察看
a. 在两台机器上分别运行date察看
#date
b. 在两台机器上分别运行ntpq -p察看
#ntpq -p


NTP配置中易出现的问题:
1. No Server suitable for synchronization found
说明:这个是最容易出现的问题,比较常见的是配置好服务器并启动服务器进程后,马上启动客户进程,那么客户进程就会报错。解决方法是,大约5分钟以后启动进程就行了--不然就会报以上错误,且时间不会同步(具体时间应该是5分钟20秒,即64s * 5 = 320s)
2. Last adjustment did not complete
说明:主要是NTP的同步过程不是一次的
3. Synchronization lost
说明:一般来说,如果发现时间差在128ms以下,NTP使用slew adjustment来实现同步,如果在128ms到1000秒之中,是使用step来实现同步。如果超过1000秒,ntpd就不能同步,只能是用ntpdate -b命令
4. ntpd进程丢失
说明:一个主要的原因是你人工使用date命令更改过本机或者server(ntp.conf里面定义的server)的时间,而且这两个时间差超过了1000秒。也就是说,如果ntpd发现本地时间和server时间超过了1000秒的话,就自动退出。超过1000秒的情况,必须使用ntpdate -b server使之和服务器同步一次(也就是在HP的/sbin/init.d/xntpd里面有一句ntpdate -b的原因)

NTP常用命令:
1. ntptrace (等同于windows下面的traceroute)
2. ntpdate -q HOSTNAME (查询其他主机的时间)
3. ntpdate -d HOSTNAME (debug模式)
4. ntpdate -b HOSTNAME (和其他主机同步)
5. ntpq -p


以上只是最简单的将NTP配置出来,还有更细致的权限、同步间隔时间等等的配置,请查看/etc/ntp.conf文件,里面会有详细的说明。


作者:陈求文
E-mail:crystal.chen.cc@gmail.com






Technorati :

没有评论: