> Linux编程 >

CentOS Linux编译安装开发版ntp 4.2.7p425教程

NTP服务器升级到4.2.7p26以上版本,但是ntp.org官网上提供的版本有两种:
1、稳定版:4.2.6p5(2011/12/24)
2、开发版:4.2.7p425(2014/02/26)
显然,如果要把NTP服务器升级到4.2.7p26,目前只能编译安装开发版的ntp 4.2.7p425。
为了验证这个解决方案,我在CentOS下编译安装开发版ntp,但参考网上的教程时遇到了不少问题,特写此教程。
一、条件及环境:
1、CentOS:我用的是最新的CentOS 6.5 64位版,此教程应该也适用于RedHat 6及CentOS 6系列所有系统;
2、编译所需环境:
view source
 
print?
1 # yum -y install vim ntp* wget gcc gcc-c++ ncurses-devel cmake make
2 # cp /etc/ntp.conf /usr/local/src/ntp.conf
3 # yum remove ntp*

注意:编译安装不会在/etc下自动生成配置文件,所以我先yum安装ntp 4.2.6p5生成/etc/ntp.conf后复制出配置文件,再卸载ntp。
3、关闭防火墙及SELINUX!

view source
 
print?
1 # chkconfig iptables off
2 # vim /etc/sysconfig/selinux
3 将SELINUX=enforcing修改成:
4 SELINUX=disabled

二、下载并安装ntp 4.2.7p425:
1、下载ntp 4.2.7p425:
如果服务器可以上网,可直接用wget命令下载:

view source
 
print?
1 # cd /usr/local/src
2 # wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-dev/ntp-dev-4.2.7p425.tar.gz

如果服务器不能上网,那你就去http://www.ntp.org/downloads.html下载到本地,然后通过SFTP或FTP上传到服务器上!
2、解包安装ntp-dev-4.2.7p425.tar.gz:

view source
 
print?
1 # tar zxvf ntp-dev-4.2.7p425.tar.gz
2 # cd ntp-dev-4.2.7p425
3 # ./configure --prefix=/usr/local/ntp --enable-all-clocks --enable-parse-clocks
4 # make && make install

3、修改配置文件ntp.conf:

view source
 
print?
1 # cp /usr/local/src/ntp.conf /etc/ntp.conf
2 # vim /etc/ntp.conf

第(1)种配置:允许任何IP的客户机都可以进行时间同步
则将“restrict default kod nomodify notrap nopeer noquery”这行修改成:

view source
 
print?
1 restrict default nomodify

第(2)种配置:只允许192.168.200.*网段的客户机进行时间同步
在“restrict default kod nomodify notrap nopeer noquery”(表示默认拒绝所有IP的时间同步)之后增加一行:
restrict 192.168.200.0 mask 255.255.255.0 nomodify
另外,配置文件默认通过网络同步时间:

view source
 
print?
1 server 0.centos.pool.ntp.org iburst
2 server 1.centos.pool.ntp.org iburst
3 server 2.centos.pool.ntp.org iburst
4 server 3.centos.pool.ntp.org iburst

(RedHat默认有类似上面4行内容,域名不一样而已)
如果需要使用本地时间,则把上面4行删掉或者用“#”号注释掉,然后添加以下两行:

view source
 
print?
1 server 127.127.1.0
2 fudge  127.127.1.0 stratum 10

(RedHat默认有上面两行,但被注释掉了)
4、启动ntp服务:

view source
 
print?
1 # /usr/local/ntp/bin/ntpd -c /etc/ntp.conf -p /tmp/ntpd.pid
2 # 检查ntp服务器是否在后台运行可以用下面这条命令:
3 # ps -ef | grep ntp
4 # 检查ntpd侦听的UDP 123端口是否正常用下面这条命令:
5 #  netstat -unl | grep 123

5、用客户端检验时钟同步服务器是否可用。
6、如需设置ntpd服务开机自动启动,则只需把上面的启动命令放入/etc/rc.local文件中即可。

(责任编辑:IT)