]> git.pld-linux.org Git - packages/pdns.git/blame - pdns.init
- updated to 3.4.1
[packages/pdns.git] / pdns.init
CommitLineData
d5cc2b05 1#!/bin/sh
2# pdns This is controller stript for PowerDNS name server.
3#
46c15d6b 4# chkconfig: 345 85 15
d5cc2b05 5#
6# description: pdns is is a Domain Name Server (DNS) \
7# that is used to resolve host names to IP addresses.
8
9# Source function library
10. /etc/rc.d/init.d/functions
11
12# Source networking configuration
13. /etc/sysconfig/network
14
15# Check that networking is up.
51acdf4e 16if is_yes "${NETWORKING}"; then
308f627d 17 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
51acdf4e 18 msg_network_down "PowerDNS"
19 exit 1
20 fi
21else
22 exit 0
d5cc2b05 23fi
24
25BINARYPATH=/usr/sbin
26SBINARYPATH=/usr/sbin
27SOCKETPATH=/var/run
28
29cd /var/run
30suffix=`basename $0 | awk -F- '{print $2}'`
e0b37a4a 31if [ $suffix ]; then
d5cc2b05 32 EXTRAOPTS=--config-name=$suffix
33 PROGNAME=pdns-$suffix
34else
35 PROGNAME=pdns
36fi
37
38pdns_server="/usr/sbin/pdns_server $EXTRAOPTS"
39
40doPC() {
825cfc5b 41 ret=$(/usr/bin/pdns_control $EXTRAOPTS $1 $2 2> /dev/null)
d5cc2b05 42}
43
d5cc2b05 44doPC ping
45NOTRUNNING=$?
46
767d5c50 47RETVAL=0
d5cc2b05 48case "$1" in
51acdf4e 49 status)
f0d7fa7a 50 status pdns_server
51 exit $?
e0b37a4a 52 ;;
51acdf4e 53 stop)
e0b37a4a 54 if test "$NOTRUNNING" = "0"; then
51acdf4e 55 msg_stopping "PowerDNS"
56 doPC quit 2>&1 >/dev/null
f0d7fa7a 57 [ $? -eq 0 ] && ok || fail
51acdf4e 58 rm /var/lock/subsys/pdns
59 else
60 msg_not_running "PowerDNS"
e0b37a4a 61 fi
62 ;;
51acdf4e 63 force-stop)
64 run_cmd "Killing PowerDNS without grace" killall -v -9 pdns_server
d5cc2b05 65 ;;
51acdf4e 66 start)
e0b37a4a 67 if test "$NOTRUNNING" = "0"; then
51acdf4e 68 msg_already_running "PowerDNS"
51acdf4e 69 else
70 msg_starting "PowerDNS (Powered DNS server)"
71 daemon $pdns_server --daemon --guardian=yes
72 RETVAL=$?
73 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/pdns
74 fi
75 ;;
f0d7fa7a 76 restart)
51acdf4e 77 $0 stop
78 run_cmd "PowerDNS (3 sec. timeout)" sleep 3
79 $0 start
f0d7fa7a 80 exit $?
d5cc2b05 81 ;;
e0b37a4a 82 reload|force-reload)
83 if test "$NOTRUNNING" = "0"; then
51acdf4e 84 show "Reloading PowerDNS"
85 doPC cycle 2>&1 >/dev/null
f362320e 86 if [ $? -eq 0 ]; then
87 ok
88 else
89 fail
90 RETVAL=1
91 fi
51acdf4e 92 else
f362320e 93 msg_not_running "PowerDNS" >&2
94 exit 7
f0d7fa7a 95 fi
e0b37a4a 96 ;;
51acdf4e 97 monitor)
e0b37a4a 98 if test "$NOTRUNNING" = "0"; then
51acdf4e 99 msg_already_running "PowerDNS"
100 else
101 show "PowerDNS in foreground (testing mode)"
102 $pdns_server --daemon=no --guardian=no --control-console --loglevel=9
e0b37a4a 103 fi
104 ;;
51acdf4e 105 dump)
e0b37a4a 106 if test "$NOTRUNNING" = "0"; then
51acdf4e 107 doPC list
108 echo $ret
109 else
110 msg_not_running "PowerDNS"
e0b37a4a 111 fi
112 ;;
51acdf4e 113 show)
114 if [ $# -lt 2 ]; then
115 msg_usage "$0 {show|mrtg|cricket} <variable_name_from_pdns_dump>"
f362320e 116 exit 2
e0b37a4a 117 fi
118 if test "$NOTRUNNING" = "0"; then
51acdf4e 119 echo -n "$2="
120 doPC show $2 ; echo $ret
121 else
122 msg_not_running "PowerDNS"
e0b37a4a 123 fi
124 ;;
51acdf4e 125 mrtg)
126 if [ $# -lt 2 ]; then
127 msg_usage "$0 {show|mrtg|cricket} <variable_name_from_pdns_dump>"
f362320e 128 exit 2
e0b37a4a 129 fi
130 if test "$NOTRUNNING" = "0"; then
51acdf4e 131 doPC show $2 ; echo $ret
132 if [ "$3x" != "x" ]; then
133 doPC show $3 ; echo $ret
d5cc2b05 134 else
51acdf4e 135 echo 0
136 fi
137 doPC uptime ; echo $ret
138 echo PowerDNS daemon
139 else
f362320e 140 msg_not_running "PowerDNS" >&2
141 exit 7
e0b37a4a 142 fi
143 ;;
51acdf4e 144 cricket)
145 if [ $# -lt 2 ]; then
146 msg_usage "$0 {show|mrtg|cricket} <variable_name_from_pdns_dump>"
f362320e 147 exit 2
e0b37a4a 148 fi
149 if test "$NOTRUNNING" = "0"; then
51acdf4e 150 doPC show $2 ; echo $ret
151 else
f362320e 152 msg_not_running "PowerDNS" >&2
153 exit 7
e0b37a4a 154 fi
155 ;;
51acdf4e 156 *)
f0d7fa7a 157 msg_usage "$0 {start|stop|restart|reload|force-reload|status|dump|show|mrtg|cricket|monitor} [...]"
158 exit 3
d5cc2b05 159esac
160
51acdf4e 161exit $RETVAL
This page took 0.332806 seconds and 4 git commands to generate.