X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=contrib%2Fredhat%2Finit.d-collectd;h=4c69f3c9b7e0dd88fc1ac793eca7a7e68b02bb62;hb=8aad55ab7d737a97d5927458b2b00885e27cae4d;hp=ec55a52a55d75e68613e06b35e989601d0d25bd5;hpb=3b51243382501d5f3cdda79d30c7ecf39d22dd87;p=collectd.git diff --git a/contrib/redhat/init.d-collectd b/contrib/redhat/init.d-collectd index ec55a52a..4c69f3c9 100644 --- a/contrib/redhat/init.d-collectd +++ b/contrib/redhat/init.d-collectd @@ -18,12 +18,20 @@ prog="collectdmon" service="collectd" CONFIG=/etc/collectd.conf COLLECTD=/usr/sbin/collectd -COLLECTDMONPID=/var/run/collectdmon.pid +COLLECTDMONPIDDIR="/var/run" +COLLECTDMONPID="$COLLECTDMONPIDDIR/collectdmon.pid" + +MAXWAIT=30 if [ -r /etc/sysconfig/$service ]; then . /etc/sysconfig/$service fi +if [[ ! -d $COLLECTDMONPIDDIR ]]; then + mkdir -p $COLLECTDMONPIDDIR + [ -n "${RUNAS}" ] && chown "${RUNAS}:" "$COLLECTDMONPIDDIR" +fi + check_config() { if test ! -r "$CONFIG"; then return 2 @@ -44,7 +52,7 @@ start () { echo $"not starting due to configuration error" failure $"not starting $service due to configuration error" else - daemon $prog -P $COLLECTDMONPID -c $COLLECTD -- -C "$CONFIG" $ARGS + daemon --user "${RUNAS:-root}" $prog -P $COLLECTDMONPID -c $COLLECTD -- -C "$CONFIG" $ARGS RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$service @@ -52,7 +60,7 @@ start () { } stop () { echo -n $"Stopping collectd: " - killproc $prog + killproc -p $COLLECTDMONPID -d $MAXWAIT $prog RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$service @@ -66,7 +74,7 @@ case "$1" in stop ;; status) - status $prog + status -p $COLLECTDMONPID $prog ;; restart|reload) check_config @@ -81,7 +89,7 @@ case "$1" in fi ;; condrestart) - [ -f /var/lock/subsys/$prog ] && restart || : + [ -f /var/lock/subsys/$service ] && restart || : ;; *) echo $"Usage: $0 {start|stop|status|restart|reload|condrestart}"