wllarso at swcp.com
Tue Mar 13 17:23:43 UTC 2001
You have found an elegant, although difficult, solution to a simple problem.
As an alternative to those who may try and follow in your footsteps,
the location of the PID file can be set in the "named.conf" file. Take
a look at http://www.isc.org/products/BIND/docs/config/options.html, in
particular the "pid-file" directive.
The only "trick" to having named successfully write the PID to a file
when running as a user that is not root, is to insure that this non-root
user has write permission to the directory. The simplest way to insure
this is to insure that this user owns the directory and permissions
are set as "700" or "755" (but not "777").
Then again, instead of trying to control "named" by sending it signals,
check out "ndc" that also comes with BIND-8, or "rndc" that is used
> I have recently encountered and solved a problem when running the named
> service as a user other than root. The problem is when you kill -1 the
> process it tries to write to the named.pid file. In the syslog I kept
> getting errors saying permission denied. I tried to change the location of
> the pid file, by changing the paths specified in both pathnames.h and
> Makefile.set. Neither one would pu the pid file in the correct location. I
> finally found the file that needs to be changed to controll the location of
> the pid file. It is bind-8.2.3/src/port/unixware7/include/paths.h. To
> change locations just change where _PATH_PIDFILE points to. Don't know if
> anyone else has encountered this problem or not just thought I would let
> people know.
> Jed Duty
More information about the bind-users