fixed system/netdata-init-d.in script to check status prior stop/start, fixes #1381
Ivan Vari committed
Dec 17, 2016 at 09:10 UTC
70abd30e966356587340ca11b1fcf3d22ce3ae53
1 file changed
+10
-4
system/netdata-init-d.in
+10
-4
@@ -17,12 +17,18 @@ PIDFILE=@localstatedir_POST@/run/$DAEMON.pid
17
DAEMONOPTS="-P $PIDFILE"
18
STOP_TIMEOUT="10"
19
20
+[ -e /etc/sysconfig/$DAEMON ] && . /etc/sysconfig/$DAEMON
21
+
22
+LOCKFILE=/var/lock/subsys/$DAEMON
23
+
24
service_start()
25
{
22
- echo "Starting $DAEMON..."
26
+ [ -x $DAEMON_PATH ] || exit 5
27
+ echo -n "Starting $DAEMON..."
28
daemon $DAEMON_PATH/$DAEMON $DAEMONOPTS
29
RETVAL=$?
30
echo
31
+ [ $RETVAL -eq 0 ] && touch $LOCKFILE
32
return $RETVAL
33
}
34
@@ -31,10 +37,8 @@ service_stop()
37
printf "%-50s" "Stopping $DAEMON..."
38
killproc -p ${PIDFILE} -d ${STOP_TIMEOUT} $DAEMON
39
RETVAL=$?
34
- if [ $RETVAL -eq 0 ]; then
35
- rm -f ${PIDFILE}
36
- fi
40
echo
41
+ [ $RETVAL -eq 0 ] && rm -f ${PIDFILE} ${LOCKFILE}
42
return $RETVAL
43
}
44
@@ -56,9 +60,11 @@ service_status()
60
61
case "$1" in
62
start)
63
+ service_status && exit 0
64
service_start
65
;;
66
stop)
67
+ service_status || exit 0
68
service_stop
69
;;
70
restart)