133 lines
2.8 KiB
Plaintext
133 lines
2.8 KiB
Plaintext
|
#! /bin/bash
|
||
|
#
|
||
|
# centreon_vmware Start/Stop the centreon_vmware daemon.
|
||
|
#
|
||
|
# chkconfig: 2345 80 20
|
||
|
# description: centreon_vmware is a Centreon program that manage Vpshere Checks
|
||
|
# processname: centreon_vmware.pl
|
||
|
# config: /etc/centreon/centreon_vmware.pm
|
||
|
# pidfile: /var/run/centreon_vmware.pid
|
||
|
|
||
|
# Source function library.
|
||
|
. /etc/init.d/functions
|
||
|
|
||
|
binary=/usr/bin/centreon_vmware.pl
|
||
|
servicename=$(basename "$0")
|
||
|
OPTIONS=""
|
||
|
user=root
|
||
|
timeout=60
|
||
|
start_timeout=5
|
||
|
|
||
|
pidfile=/var/run/centreon_vmware.pid
|
||
|
|
||
|
[ -e /etc/sysconfig/centreon_vmware ] && . /etc/sysconfig/centreon_vmware
|
||
|
|
||
|
# Check if we can find the binary.
|
||
|
if [ ! -x $binary ]; then
|
||
|
echo -n $"Starting $servicename.";
|
||
|
failure $"Executable file $binary not found. Exiting."
|
||
|
echo
|
||
|
exit 2
|
||
|
fi
|
||
|
|
||
|
start() {
|
||
|
echo -n $"Starting $servicename: "
|
||
|
if [ -e "$pidfile" ] && [ -n "$(cat $pidfile)" ] && [ -e "/proc/`cat $pidfile`" ]; then
|
||
|
echo -n $"cannot start $servicename: $servicename is already running.";
|
||
|
failure $"cannot start $servicename: $servicename already running.";
|
||
|
echo
|
||
|
return 1
|
||
|
fi
|
||
|
if [ ! -e "$pidfile" ] ; then
|
||
|
pid=$(pidofproc $binary)
|
||
|
if [ -n "$pid" ] ; then
|
||
|
echo -n $"cannot start $servicename: $servicename is already running.";
|
||
|
failure $"cannot start $servicename: $servicename already running.";
|
||
|
echo
|
||
|
return 1
|
||
|
fi
|
||
|
fi
|
||
|
|
||
|
if [ "$(id -u -n)" = "$user" ] ; then
|
||
|
daemon --check centreon_vmware ''$binary' '$OPTIONS' > /dev/null 2>&1 &'
|
||
|
else
|
||
|
daemon --user $user --check centreon_vmware ''$binary' '$OPTIONS' > /dev/null 2>&1 &'
|
||
|
fi
|
||
|
|
||
|
sleep 2
|
||
|
|
||
|
i=0
|
||
|
while : ; do
|
||
|
if [ "$i" -gt $start_timeout ] ; then
|
||
|
failure $"service not launched"
|
||
|
echo
|
||
|
return 1
|
||
|
fi
|
||
|
pid=$(pidofproc $binary)
|
||
|
if [ -n "$pid" ] ; then
|
||
|
echo $pid > $pidfile
|
||
|
break
|
||
|
fi
|
||
|
sleep 1
|
||
|
i=$(($i + 1))
|
||
|
done
|
||
|
success $"service launched"
|
||
|
echo
|
||
|
return 0
|
||
|
}
|
||
|
|
||
|
stop() {
|
||
|
echo -n $"Stopping $servicename: "
|
||
|
if [ ! -e "$pidfile" ] || [ -z "$(cat $pidfile)" ] ; then
|
||
|
killproc -d $timeout "$binary"
|
||
|
else
|
||
|
killproc -p "$pidfile" -d $timeout "$binary"
|
||
|
fi
|
||
|
RETVAL=$?
|
||
|
echo
|
||
|
return $RETVAL
|
||
|
}
|
||
|
|
||
|
rhstatus() {
|
||
|
status -p "$pidfile" "$binary"
|
||
|
}
|
||
|
|
||
|
restart() {
|
||
|
stop
|
||
|
start
|
||
|
}
|
||
|
|
||
|
reload() {
|
||
|
echo -n $"Reloading $servicename daemon configuration: "
|
||
|
killproc -p "$pidfile" "$binary" -HUP
|
||
|
RETVAL=$?
|
||
|
echo
|
||
|
return $RETVAL
|
||
|
}
|
||
|
|
||
|
case "$1" in
|
||
|
start)
|
||
|
start
|
||
|
;;
|
||
|
stop)
|
||
|
stop
|
||
|
;;
|
||
|
restart)
|
||
|
restart
|
||
|
;;
|
||
|
reload)
|
||
|
reload
|
||
|
;;
|
||
|
status)
|
||
|
rhstatus
|
||
|
;;
|
||
|
condrestart)
|
||
|
[ -f /var/lock/subsys/centreon_vmware ] && restart || :
|
||
|
;;
|
||
|
*)
|
||
|
echo $"Usage: $0 {start|stop|status|reload|restart|condrestart}"
|
||
|
exit 1
|
||
|
esac
|
||
|
|
||
|
|