File: munin-cgi-graph.init

package info (click to toggle)
munin 2.0.73-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 7,044 kB
  • sloc: perl: 11,682; java: 1,924; sh: 1,619; makefile: 636; javascript: 365; python: 267
file content (116 lines) | stat: -rw-r--r-- 2,387 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#! /bin/sh

### BEGIN INIT INFO
# Provides:	     munin-cgi-graph
# Required-Start:    $network $named $local_fs $remote_fs
# Required-Stop:     $network $named $local_fs $remote_fs
# Default-Start:     2 3 4 5
# Default-Stop:	     0 1 6
# Short-Description: starts FastCGI for Munin-Graph
# Description:	     starts FastCGI for Munin-Graph using start-stop-daemon
### END INIT INFO
# --------------------------------------------------------------
# Based on Munin-CGI-Graph Spawn-FCGI Startscript by Julien Schmidt
# eMail: munin-trac at julienschmidt.com
# www:	 http://www.julienschmidt.com
# --------------------------------------------------------------
# Install:
#   1. Copy this file to /etc/init.d
#   2. run "update-rc.d munin-cgi-graph defaults"
# --------------------------------------------------------------

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
NAME=munin-cgi-graph
PID_FILE="/run/munin/$NAME.pid"
SOCK_FILE="/run/munin/$NAME.socket"
CGI_SCRIPT="/usr/lib/munin/cgi/$NAME"
DAEMON=/usr/bin/spawn-fcgi
DAEMON_OPTS="-s $SOCK_FILE -U www-data -u munin -g munin -P $PID_FILE -- $CGI_SCRIPT"

# --------------------------------------------------------------
# No edits necessary beyond this line
# --------------------------------------------------------------

if [ ! -x $DAEMON ]; then
	echo "File not found or is not executable: $DAEMON!"
	exit 0
fi

status() {
	if [ ! -r $PID_FILE ]; then
		return 1
	fi

	FCGI_PID=`cat $PID_FILE`
	if [ -z "${FCGI_PID}" ]; then
		return 1
	fi

	FCGI_RUNNING=`ps -p ${FCGI_PID} | grep ${FCGI_PID}`
	if [ -z "${FCGI_RUNNING}" ]; then
		return 1
	fi

	return 0
}

start() {
	if status; then
		echo "FCGI is already running!"
		exit 1
	else
		$DAEMON $DAEMON_OPTS
	fi
}

stop () {
	if ! status; then
		echo "No PID-file at $PID_FILE found or PID not valid. Maybe not running"
		exit 1
	fi

	# Kill process
	kill -9 `cat $PID_FILE`

	# Remove PID-file
	rm -f $PID_FILE

	# Remove Sock-File
	rm -f $SOCK_FILE
}

case "$1" in
	start)
		echo "Starting $NAME: "
		start
		echo "... DONE"
	;;

	stop)
		echo "Stopping $NAME: "
		stop
		echo "... DONE"
	;;

	force-reload|restart)
		echo "Stopping $NAME: "
		stop
		start
		echo "... DONE"
	;;

	status)
		if status; then
			echo "FCGI is RUNNING"
		else
			echo "FCGI is NOT RUNNING"
		fi
	;;

	*)
		echo "Usage: $0 {start|stop|restart|status}"
		exit 1
		;;
esac

exit 0