Chinaunix

标题: BIND升级问题 [打印本页]

作者: ztsstz    时间: 2009-09-01 16:44
标题: BIND升级问题
问题描述
1、
系统freebsd7.1
自带bind程序
#/usr/sbin/named -v
bind 9.4.2-p2
增加、修改某些文件和参数后可以正常启动,并且正常进行域名解析
named没有设置随系统启动

2、
升级BIND
#cd /usr/ports/dns/bind96
#make install clean
安装完成后有这样提示:
/usr/local/sbin/named
/usr/local/sbin/rndc-confgen
/usr/local/sbin/dnssec-dsfromkey
/usr/local/bin/host
/usr/local/sbin/dnssec-signzone
/usr/local/bin/nsupdate
/usr/local/sbin/rndc
/usr/local/sbin/lwresd
/usr/local/bin/dig
/usr/local/sbin/dnssec-keygen
/usr/local/sbin/named-checkzone
/usr/local/sbin/dnssec-keyfromlabel
/usr/local/sbin/named-checkconf
/usr/local/bin/nslookup

察看版本:
#/usr/local/sbin/named -v
BIND 9.6.1-P1

3、
停止老版本BIND
#killall named
启动新版本BIND
#/usr/local/sbin/named
报错、提示:/usr/local/etc/目录下没有named.conf和rndc.key两个文件
named[695]: none:0: open: /usr/local/etc/named.conf: file not found      
named[695]: loading configuration: file not found
named[695]: exiting (due to fatal error)
named[744]: none:0: open: /usr/local/etc/rndc.key: file not found
named[744]: couldn't add command channel 127.0.0.1#953: file not found
named[744]: none:0: open: /usr/local/etc/rndc.key: file not found

分别拷贝
/etc/namedb/named.conf文件
/etc/namedb/rndc.key文件   
到/usr/local/etc目录下,不再提示此错误

#/usr/loca/sbin/named
named正常启动,/var/log/messages文件中无错误提示


修改/etc/rc.conf
添加
named_enable="YES"
named_program="/usr/local/sbin/named"
重新启动后报错,提示
named[695]: none:0: open: /usr/local/etc/named.conf: file not found      
named[695]: loading configuration: file not found
通过手动可以正常启动

将/usr/sbin/目录下named文件替换为/usr/local/sbin/目录下的named文件
重启后出现同样错误

不知何故?
作者: ruochen    时间: 2009-09-02 10:28
看是环境变量的问题不
作者: llzqq    时间: 2009-09-02 15:18
看看是否启用了chroot

试试直接启动:

# named -u bind -c /usr/local/etc/named.conf
作者: ruochen    时间: 2009-09-02 18:07
原帖由 llzqq 于 2009-9-2 15:18 发表
看看是否启用了chroot

试试直接启动:

# named -u bind -c /usr/local/etc/named.conf



有可能
关键还是看日志
多给点信息
作者: ztsstz    时间: 2009-09-03 21:25
谢谢大家
问题已经解决,并做了一个笔记,如下:
1、升级bind
更新ports(略)
#cd /usr/ports/dns/bind96
#make install clean
注意:在安装的时候,会有几个选项让你选择(默认即可),下面这个选项务必选上。
[X] LINKS           Create conf file symlinks in /usr/local
这个选项的目的就是在/usr/local/etc 目录下建立连个链接文件。


安装完成后
新版的BIND会在/usr/local/etc/目录下建立:
named.conf@ -> /etc/namedb/named.conf
rndc.key@ -> /etc/namedb/rndc.key
两个链接文件。
以后修改配置的时候,直接进入/etc/namedb/目录下修改文件就可以了。

2、修改/etc/defaults/rc.conf
#ee /etc/defaults/rc.conf
找到
named_enable="NO"
named_program="/usr/sbin/named"
改为
named_enable="YES"
named_program="/usr/local/sbin/named"

3、修改/etc/rc.conf
#ee /etc/rc.conf
删除named_enable="YES"选项
重启

4、重启后提示:
named[597]: the working directory is not writable

从网上找了一圈
解决办法:
#ee /etc/mtree/BIND.chroot.dist


/set type=dir uname=root gname=wheel mode=0755
修改为:
/set type=dir uname=bind gname=wheel mode=0755

自此,问题解决。




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2