80 lines
1.3 KiB
Bash
80 lines
1.3 KiB
Bash
#!/bin/sh
|
|
#
|
|
# nrpe daemon control script.
|
|
#
|
|
# This is an init script for the nrpe daemon.
|
|
# To use nrpe, you must first set up the config file(s).
|
|
#
|
|
# Written for Slackware Linux by Cherife li <cherife@dotimes.com>
|
|
# Modified for SBo by Zordrak <slackbuilds@tpa.me.uk>
|
|
|
|
BIN=/usr/bin/nrpe
|
|
CFGFILE=/etc/nagios/nrpe.cfg
|
|
PIDFILE=/var/run/nrpe.pid
|
|
LOCKFILE=/var/lock/nrpe
|
|
|
|
printstatus()
|
|
{
|
|
if [ -e $PIDFILE ]; then
|
|
echo "nrpe (pid $PID) is running..."
|
|
else
|
|
echo "nrpe is not running"
|
|
fi
|
|
}
|
|
|
|
killproc()
|
|
{
|
|
kill $2 $PID
|
|
}
|
|
|
|
getpid()
|
|
{
|
|
if test ! -f $PIDFILE; then
|
|
echo "Pid file $PIDFILE not found."
|
|
exit 1
|
|
else
|
|
PID=`head -n 1 $PIDFILE`
|
|
fi
|
|
}
|
|
|
|
# Check whether nrpe bin file exists.
|
|
if [ ! -f $BIN ]; then
|
|
echo "Executable file $BIN not found. Exiting."
|
|
exit 1
|
|
fi
|
|
|
|
# Check whether nrpe config exists.
|
|
if [ ! -f $CFGFILE ]; then
|
|
echo "Configuration file $CFGFILE not found. Exiting."
|
|
exit 1
|
|
fi
|
|
|
|
# Controls
|
|
case "$1" in
|
|
start)
|
|
echo -n "Starting nrpe:"
|
|
$BIN -c $CFGFILE -d
|
|
touch $LOCKFILE
|
|
echo " done."
|
|
;;
|
|
stop)
|
|
echo -n "Stopping nrpe:"
|
|
getpid
|
|
killproc nrpe
|
|
rm -f $LOCKFILE
|
|
echo " done."
|
|
;;
|
|
status)
|
|
getpid
|
|
printstatus nrpe
|
|
;;
|
|
restart)
|
|
$0 stop
|
|
$0 start
|
|
;;
|
|
*)
|
|
echo "Usage: nrpe {start|stop|restart|status}"
|
|
exit 1
|
|
;;
|
|
esac
|