Master file not found

Udo Zumdick uz at nic.dtag.de
Tue Nov 22 10:25:25 UTC 2005



> First after I went from DHCP to a static IP I booted instead of restarting 
> network, I still suspect a environment variable not set anymore.

in a bash environment you may be able to relate to this problem using the
history function. If it is an env variable that isn't  set correctly and that
is also if the system is freshly booted, it must have been set manually, I
think.

[....]
> The interesting thing about this "working" configuration is that bind has to 
> read the /etc/named.conf to get the dirctory change then must have the same 
> named.conf in the new directory to continue?  What happened to the default 
> /var/named?????

[....]
> Log messages note I had -d 5 as an option and had a permission problem with 
> "named.run"
[....]

this is because there is no directory option in the named.conf, so named tries
to create its pidfile in /var and an ordinary user like named (-u named)
usually cannot write to this directory.

On most linux distributions the BIND installation differs from the standard
isc.org BIND installation, especially  where the named.conf is located. On
most linuxes it is located in /etc/named.conf but my experience is that a
fresh compiled BIND from ISC is looking for the named.conf in $PREFIX/var, if
you have no directory option in your named.conf.

Maybe that is the point in your installation. In your named.conf is no
'directory' option, so I guess named looks in /var ?

It is always a good idea to start named with the option -c /path_to/named.conf

I would suggest giving the BIND its own home, i.e. under /opt/dns
(configure --prefix=/opt/dns) and store all needed files there
(/opt/dns/var/named.conf for example). This will help to avoid those problems
finding configuration files etc.

I think you only have a permission problem, nothing obscure :-) and you should
star from a new point:


Do the following:
Create a directory /opt/dns  i.e. and give it to the user named as the owner.
Create a group dns and put named in there. Make sure that the at least the
user named as read/write permissions th the directory. 

Get, compile and install  a fresh BIND 9.3.2beta from ISC.org with the
configure option --prefix=/opt/dns

Then put the following in the named.conf 

--- snip ----
options {
        directory "/opt/dns";
        pid-file "/opt/dns/var/named.pid";
}

--- snip ----

Also make sure that all other files like  zonefiles are located
under /opt/dns as the options 'directory=/opt/dns' works as a prefix. As above
make sure that the user named has read/write permissions to this.

That should work.

-Udo 



More information about the bind-users mailing list