zabbix/SOURCES/zabbix-agent2.init

98 lines
1.8 KiB
Bash

#!/bin/sh
#
# chkconfig: - 86 14
# description: Zabbix agent 2 daemon
# processname: zabbix_agent2
# config: /etc/zabbix/zabbix_agent2.conf
#
### BEGIN INIT INFO
# Provides: zabbix-agent2
# Required-Start: $local_fs $network
# Required-Stop: $local_fs $network
# Should-Start: zabbix zabbix-proxy
# Should-Stop: zabbix zabbix-proxy
# Default-Start:
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: Start and stop Zabbix agent 2
# Description: Zabbix agent 2
### END INIT INFO
# Source function library.
. /etc/rc.d/init.d/functions
if [ -x /usr/sbin/zabbix_agent2 ]; then
exec=/usr/sbin/zabbix_agent2
else
exit 5
fi
prog=${exec##*/}
conf=/etc/zabbix/zabbix_agent2.conf
pidfile=$(grep -e "^PidFile=.*$" $conf | cut -d= -f2 | tr -d '\r')
timeout=10
if [ -f /etc/sysconfig/zabbix-agent2 ]; then
. /etc/sysconfig/zabbix-agent2
fi
if [ -n "$ZABBIX_AGENT_USER" ]; then
user_conf="--user=$ZABBIX_AGENT_USER"
else
user_conf=''
fi
lockfile=/var/lock/subsys/zabbix-agent2
start()
{
echo -n $"Starting Zabbix agent 2: "
daemon $user_conf $exec -c $conf &>/dev/null &
rv=$?
echo
[ $rv -eq 0 ] && touch $lockfile
return $rv
}
stop()
{
echo -n $"Shutting down Zabbix agent 2: "
killproc -p $pidfile -d $timeout $prog
rv=$?
echo
[ $rv -eq 0 ] && rm -f $lockfile
return $rv
}
restart()
{
stop
start
}
case "$1" in
start|stop|restart)
$1
;;
force-reload)
restart
;;
status)
status -p $pidfile $prog
;;
try-restart|condrestart)
if status $prog >/dev/null ; then
restart
fi
;;
reload)
action $"Service ${0##*/} does not support the reload action: " /bin/false
exit 3
;;
*)
echo $"Usage: $0 {start|stop|status|restart|try-restart|force-reload}"
exit 2
;;
esac