bind9 runs in a chroot environment on lenny. The service can be started as usual:
# /etc/init.d/bind9 start Starting domain name service...: bind9.
Let’s check bind9 status:
bind9 is not running failed! `
Well, the first thing I did was to check the log file, in which I found no error related to named. So I tried another way to check the status:
# rndc status version: 9.6-ESV-R3 CPUs found: 1 worker threads: 1 number of zones: 17 debug level: 0 xfers running: 0 xfers deferred: 0 soa queries in progress: 0 query logging is OFF recursive clients: 0/0/1000 tcp clients: 0/100 server is up and running
I was convinced that the DNS service was running. So what went wrong? It must be something in the
/etc/init.d/bind9 script that incorrectly reports bind9 status. Opened up this file, I found:
... PIDFILE=/var/run/bind/run/named.pid ...
Ah ha, the default location of
named.pid is in
/var/run/bind/run. In my case,
named.pid is located in
/var/chroot/var/run/bind/run/named.pid. Therefore in order to fix this, we just need to point PIDFILE to the correct file.
Then, save bind9 script, and check bind9 status again:
# /etc/init.d/bind9 status bind9 is running.