#!/bin/sh
# pdns This is controller stript for PowerDNS name server.
#
-# chkconfig: 345 80 75
+# chkconfig: 345 85 15
#
# description: pdns is is a Domain Name Server (DNS) \
# that is used to resolve host names to IP addresses.
# Check that networking is up.
if is_yes "${NETWORKING}"; then
- if [ ! -f /var/lock/subsys/network ]; then
+ if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
msg_network_down "PowerDNS"
exit 1
fi
cd /var/run
suffix=`basename $0 | awk -F- '{print $2}'`
-if [ $suffix ]
-then
+if [ $suffix ]; then
EXTRAOPTS=--config-name=$suffix
PROGNAME=pdns-$suffix
else
pdns_server="/usr/sbin/pdns_server $EXTRAOPTS"
doPC() {
- ret=$(/usr/sbin/pdns_control $EXTRAOPTS $1 $2 2> /dev/null)
+ ret=$(/usr/bin/pdns_control $EXTRAOPTS $1 $2 2> /dev/null)
}
doPC ping
status)
status pdns_server
exit $?
- ;;
+ ;;
stop)
- if test "$NOTRUNNING" = "0"; then
+ if test "$NOTRUNNING" = "0"; then
msg_stopping "PowerDNS"
doPC quit 2>&1 >/dev/null
[ $? -eq 0 ] && ok || fail
rm /var/lock/subsys/pdns
else
msg_not_running "PowerDNS"
- fi
- ;;
+ fi
+ ;;
force-stop)
run_cmd "Killing PowerDNS without grace" killall -v -9 pdns_server
;;
start)
- if test "$NOTRUNNING" = "0"; then
+ if test "$NOTRUNNING" = "0"; then
msg_already_running "PowerDNS"
else
msg_starting "PowerDNS (Powered DNS server)"
$0 start
exit $?
;;
- reload|force-reload)
- if test "$NOTRUNNING" = "0"; then
+ reload|force-reload)
+ if test "$NOTRUNNING" = "0"; then
show "Reloading PowerDNS"
doPC cycle 2>&1 >/dev/null
if [ $? -eq 0 ]; then
msg_not_running "PowerDNS" >&2
exit 7
fi
- ;;
+ ;;
monitor)
- if test "$NOTRUNNING" = "0"; then
+ if test "$NOTRUNNING" = "0"; then
msg_already_running "PowerDNS"
else
show "PowerDNS in foreground (testing mode)"
$pdns_server --daemon=no --guardian=no --control-console --loglevel=9
- fi
- ;;
+ fi
+ ;;
dump)
- if test "$NOTRUNNING" = "0"; then
+ if test "$NOTRUNNING" = "0"; then
doPC list
echo $ret
else
msg_not_running "PowerDNS"
- fi
- ;;
+ fi
+ ;;
show)
if [ $# -lt 2 ]; then
msg_usage "$0 {show|mrtg|cricket} <variable_name_from_pdns_dump>"
exit 2
- fi
- if test "$NOTRUNNING" = "0"; then
+ fi
+ if test "$NOTRUNNING" = "0"; then
echo -n "$2="
doPC show $2 ; echo $ret
else
msg_not_running "PowerDNS"
- fi
- ;;
+ fi
+ ;;
mrtg)
if [ $# -lt 2 ]; then
msg_usage "$0 {show|mrtg|cricket} <variable_name_from_pdns_dump>"
exit 2
- fi
- if test "$NOTRUNNING" = "0"; then
+ fi
+ if test "$NOTRUNNING" = "0"; then
doPC show $2 ; echo $ret
if [ "$3x" != "x" ]; then
doPC show $3 ; echo $ret
else
msg_not_running "PowerDNS" >&2
exit 7
- fi
- ;;
+ fi
+ ;;
cricket)
if [ $# -lt 2 ]; then
msg_usage "$0 {show|mrtg|cricket} <variable_name_from_pdns_dump>"
exit 2
- fi
- if test "$NOTRUNNING" = "0"; then
+ fi
+ if test "$NOTRUNNING" = "0"; then
doPC show $2 ; echo $ret
else
msg_not_running "PowerDNS" >&2
exit 7
- fi
- ;;
+ fi
+ ;;
*)
msg_usage "$0 {start|stop|restart|reload|force-reload|status|dump|show|mrtg|cricket|monitor} [...]"
exit 3