| #!/bin/sh |
| # |
| # System-V init to control the bind DNS Daemon |
| # |
| |
| NAME=named |
| DAEMON=/usr/sbin/$NAME |
| |
| # this file contains a few tunable parameters |
| test -r /etc/default/named && . /etc/default/named |
| |
| test -f $DAEMON || exit 0 |
| |
| set -e |
| |
| case "$1" in |
| start) |
| test -z "$CHROOT" || ARGS="$ARGS -t $CHROOT" |
| test -z "$SETUID" || ARGS="$ARGS -u $SETUID" |
| if [ ! -f $CHROOT/etc/rndc.key ]; then |
| echo "Initializing $NAME control key: rndc-confgen" |
| set +e |
| |
| # if rndc.key is a symlink, the target must exist |
| touch $CHROOT/etc/rndc.key |
| touch etc/rndc.key |
| |
| rndc-confgen -a -r /dev/urandom $ARGS || true |
| set -e |
| fi |
| test -z "$CONF" || ARGS="$ARGS -c $CONF" |
| echo -n "Starting domain name daemon: $NAME" |
| trap 'echo failed' 0 |
| start-stop-daemon -S -x $DAEMON -- $ARGS |
| trap - 0 |
| echo "." |
| ;; |
| stop) |
| echo -n "Stopping domain name daemon: $NAME" |
| rndc stop || start-stop-daemon -K -x $DAEMON |
| echo "." |
| ;; |
| restart) |
| $0 stop || true |
| sleep 2 |
| $0 start |
| ;; |
| reload|force-reload) |
| rndc reload || $0 restart |
| ;; |
| *) |
| echo "Usage: $0 {start|stop|restart|reload|force-reload}" |
| exit 1 |
| esac |
| |
| exit 0 |