]> git.pld-linux.org Git - packages/nagios.git/blame - nagios.init
- recover dependencies.cfg
[packages/nagios.git] / nagios.init
CommitLineData
96018fcf
TO
1#!/bin/sh
2#
47010e3e 3# Nagios Host/service/network monitoring daemon
96018fcf 4#
20cccccd 5# chkconfig: 345 85 24
96018fcf
TO
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.
19if is_yes "${NETWORKING}"; then
9405ddf7 20 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
1056cd95 21 msg_network_down "Nagios"
043169b2 22 exit 1
23 fi
96018fcf 24else
043169b2 25 exit 0
96018fcf
TO
26fi
27
d5757369
ER
28# configtest itself
29configtest() {
cd6567d2
ER
30 /usr/sbin/nagios -v /etc/nagios/nagios.cfg 2>&1
31 return $?
20bd359d
AG
32}
33
d5757369
ER
34# wrapper for configtest:
35checkconfig() {
36 local details=${1:-0}
37
38 if [ $details = 1 ]; then
39 # run config test and display report (status action)
0fa2be77
ER
40 show "Checking %s configuration" "Nagios"; busy
41 local out
42 out=`configtest 2>&1`
d5757369 43 RETVAL=$?
0fa2be77
ER
44 if [ $RETVAL = 0 ]; then
45 ok
46 else
47 fail
0fa2be77 48 fi
cd6567d2 49 [ "$out" ] && echo >&2 "$out"
d5757369
ER
50 else
51 # run config test and abort with nice message if failed
52 # (for actions checking status before action).
53 configtest >/dev/null 2>&1
54 RETVAL=$?
55 if [ $RETVAL != 0 ]; then
56 show "Checking %s configuration" "Nagios"; fail
57 nls 'Configuration test failed. See details with %s "checkconfig"' $0
58 exit $RETVAL
59 fi
60 fi
61}
62
568ca34a 63start() {
96018fcf 64 # Check if the service is already running?
1056cd95
ER
65 if [ -f /var/lock/subsys/nagios ]; then
66 msg_already_running "Nagios"
67 return
68 fi
69
d5757369 70 checkconfig
1056cd95 71 msg_starting "Nagios"
1056cd95
ER
72
73 # remove stale cmd pipe (or nagios won't start if it exists)
74 rm -f /var/lib/nagios/rw/nagios.cmd
75 daemon /usr/sbin/nagios -d /etc/nagios/nagios.cfg </dev/null
76 RETVAL=$?
77 if [ $RETVAL -eq 0 ]; then
78 touch /var/lock/subsys/nagios
96018fcf 79 fi
568ca34a
ER
80}
81
82stop() {
043169b2 83 # Stop daemons.
1056cd95
ER
84 if [ ! -f /var/lock/subsys/nagios ]; then
85 msg_not_running "Nagios"
86 return
96018fcf 87 fi
1056cd95
ER
88
89 msg_stopping "Nagios"
90 killproc nagios -TERM
91 rm -f /var/lock/subsys/nagios > /dev/null 2>&1
92}
93
cd6567d2 94reload() {
1056cd95
ER
95 if [ ! -f /var/lock/subsys/nagios ]; then
96 msg_not_running "Nagios"
cd6567d2 97 RETVAL=7
1056cd95
ER
98 return
99 fi
100
d5757369 101 checkconfig
cd6567d2
ER
102 msg_reloading "Nagios"
103
104 killproc nagios -HUP
105 RETVAL=$?
1056cd95
ER
106}
107
cd6567d2 108condrestart() {
1056cd95
ER
109 if [ ! -f /var/lock/subsys/nagios ]; then
110 msg_not_running "Nagios"
cd6567d2 111 RETVAL=$1
1056cd95
ER
112 return
113 fi
114
d5757369 115 checkconfig
cd6567d2
ER
116 stop
117 start
568ca34a
ER
118}
119
120RETVAL=0
121# See how we were called.
122case "$1" in
1056cd95 123 start)
568ca34a 124 start
96018fcf 125 ;;
1056cd95 126 stop)
568ca34a 127 stop
96018fcf 128 ;;
1056cd95 129 restart)
d5757369 130 checkconfig
568ca34a
ER
131 stop
132 start
133 ;;
1056cd95
ER
134 try-restart)
135 condrestart 0
136 ;;
137 reload|force-reload)
138 reload
139 ;;
cd6567d2 140 checkconfig|configtest)
d5757369 141 checkconfig 1
96018fcf 142 ;;
1056cd95
ER
143 status)
144 status nagios
145 RETVAL=$?
146 ;;
62e2d388 147*)
1056cd95 148 msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|checkconfig|status}"
64d31ef5 149 exit 3
96018fcf
TO
150esac
151
152exit $RETVAL
This page took 0.120478 seconds and 4 git commands to generate.