]> git.pld-linux.org Git - packages/nagios.git/blob - nagios.init
- cosmetics; add try-restart
[packages/nagios.git] / nagios.init
1 #!/bin/sh
2 #
3 # Nagios        Host/service/network monitoring daemon
4 #
5 # chkconfig:    345 85 24
6 # description:  Host/service/network monitoring daemon which uses snort as NIDS
7 #
8
9 # Source function library
10 . /etc/rc.d/init.d/functions
11
12 # Get network config
13 . /etc/sysconfig/network
14
15 # Get service config
16 [ -f /etc/sysconfig/nagios ] && . /etc/sysconfig/nagios
17
18 # Check that networking is up.
19 if is_yes "${NETWORKING}"; then
20         if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
21                 msg_network_down "Nagios"
22                 exit 1
23         fi
24 else
25         exit 0
26 fi
27
28 checkconfig() {
29         /usr/sbin/nagios -v /etc/nagios/nagios.cfg > /dev/null
30         rc=$?
31         if [ $rc -gt 0 ]; then
32                 fail
33                 nls 'The configuration is broken. See details with %s "checkconfig"' /etc/rc.d/init.d/nagios
34         fi
35         return $rc
36 }
37
38 start() {
39         # Check if the service is already running?
40         if [ -f /var/lock/subsys/nagios ]; then
41                 msg_already_running "Nagios"
42                 return
43         fi
44
45         msg_starting "Nagios"
46         checkconfig || exit
47
48         # remove stale cmd pipe (or nagios won't start if it exists)
49         rm -f /var/lib/nagios/rw/nagios.cmd
50         daemon /usr/sbin/nagios -d /etc/nagios/nagios.cfg </dev/null
51         RETVAL=$?
52         if [ $RETVAL -eq 0 ]; then
53                 touch /var/lock/subsys/nagios
54         fi
55 }
56
57 stop() {
58         # Stop daemons.
59         if [ ! -f /var/lock/subsys/nagios ]; then
60                 msg_not_running "Nagios"
61                 return
62         fi
63
64         msg_stopping "Nagios"
65         killproc nagios -TERM
66         rm -f /var/lock/subsys/nagios > /dev/null 2>&1
67 }
68
69 condrestart() {
70         if [ ! -f /var/lock/subsys/nagios ]; then
71                 msg_not_running "Nagios"
72                 RETVAL=$1
73                 return
74         fi
75
76         stop
77         start
78 }
79
80 reload() {
81         if [ ! -f /var/lock/subsys/nagios ]; then
82                 msg_not_running "Nagios"
83                 RETVAL=7
84                 return
85         fi
86
87         msg_reloading "Nagios"
88         checkconfig || exit
89
90         killproc nagios -HUP
91         RETVAL=$?
92 }
93
94 RETVAL=0
95 # See how we were called.
96 case "$1" in
97   start)
98         start
99         ;;
100   stop)
101         stop
102         ;;
103   restart)
104         msg_reloading "Nagios"
105         checkconfig || exit && started
106         stop
107         start
108         ;;
109   try-restart)
110         condrestart 0
111         ;;
112   reload|force-reload)
113         reload
114         ;;
115   checkconfig|check|configtest)
116         /usr/sbin/nagios -v /etc/nagios/nagios.cfg
117         exit $?
118         ;;
119   status)
120         status nagios
121         RETVAL=$?
122         ;;
123 *)
124         msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|checkconfig|status}"
125         exit 3
126 esac
127
128 exit $RETVAL
This page took 0.078077 seconds and 4 git commands to generate.