blob: 4d23aec2ceef2aa488f562cd712ef2fa941a3694 (
plain)
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
117
|
#!/bin/sh
#
# /etc/init.d/pure-ftpd
#
PATH=/bin:/usr/bin:/sbin:/usr/sbin
# defaults
DAEMON="pure-ftpd"
NAME="pure-ftpd"
PREFIX="pure-ftpd: "
DAEMON_OPTIONS="-B @DAEMON_ARGS@"
DAEMON_PIDFILE=/var/run/pure-ftpd.pid
HELPER="pure-uploadscript"
HELPER_START_SCRIPT="@HELPER_SCRIPT@"
HELPER_OPTIONS="-B @HELPER_ARGS@"
trap "" 1
trap "" 15
which $DAEMON || { echo "${PREFIX}$DAEMON not found"; exit; }
if [ ! -z $HELPER_START_SCRIPT ] ; then
DAEMON_OPTIONS="$DAEMON_OPTIONS -o"
fi
start_helper(){
if [ ! -z $HELPER_START_SCRIPT ]; then
which $HELPER || { echo "${PREFIX}$HELPER not found"; exit; }
echo "${PREFIX}starting upload helper daemon..."
$HELPER $HELPER_OPTIONS -r $HELPER_START_SCRIPT
else
echo "${PREFIX}no upload script defined, skipping"
fi
}
stop_helper(){
killall -9 "$HELPER"
}
start_daemon(){
which $DAEMON
$DAEMON -g $DAEMON_PIDFILE $DAEMON_OPTIONS
}
stop_daemon(){
if [ -e "$DAEMON_PIDFILE" ]; then
kill `cat $DAEMON_PIDFILE`
case $? in
0)
echo "${PREFIX}$NAME stopped"
;;
*)
kill -9 `cat $DAEMON_PIDFILE`
echo "${PREFIX}failed to stop $NAME - process killed"
;;
esac
rm -f $DAEMON_PIDFILE
echo "${PREFIX}pidfile removed"
else
echo "${PREFIX}pid file not found - process not running"
fi
}
start(){
start_daemon
start_helper
}
stop(){
stop_daemon
stop_helper
}
case "$1" in
start)
echo -n "${PREFIX}starting $NAME: "
start
echo "done"
;;
stop)
echo -n "${PREFIX}stopping $NAME: "
stop
echo "done"
;;
reload)
echo -n "${PREFIX}reloading $NAME configuration..."
if [ -e "$DAEMON_PIDFILE" ]; then
kill -HUP `cat $DAEMON_PIDFILE`
echo " done."
else
echo "pid file not found - process not running"
fi
;;
force-reload|restart)
echo -n "${PREFIX}restarting $NAME."
stop
echo -n "."
sleep 2
echo -n "."
start
echo " done."
;;
*)
echo "Usage: /etc/init.d/$NAME {start|stop|reload|restart|force-reload|help}"
exit 1
;;
esac
exit 0
|