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
|
#! /bin/sh
PATH=/bin:/usr/bin:/sbin:/usr/sbin
DAEMON=/usr/lib/sympa/bin/sympa.pl
PIDFILE=/var/run/sympa/sympa.pid
ARCHIVED_DAEMON=/usr/lib/sympa/bin/archived.pl
ARCHIVED_PIDFILE=/var/run/sympa/archived.pid
BOUNCED_DAEMON=/usr/lib/sympa/bin/bounced.pl
BOUNCED_PIDFILE=/var/run/sympa/bounced.pid
TASK_MANAGER_DAEMON=/usr/lib/sympa/bin/task_manager.pl
TASK_MANAGER_PIDFILE=/var/run/sympa/task_manager.pid
OWNER="sympa:sympa"
use_db()
{
conf=/etc/sympa/sympa.conf
grep -q "^[[:space:]]*db_name" $conf &&\
grep -q "^[[:space:]]*db_type" $conf &&\
return 0
return 1
}
test -f $DAEMON || exit 0
test -f $ARCHIVED_DAEMON || exit 0
test -f $BOUNCED_DAEMON || exit 0
test -f $TASK_MANAGER_DAEMON || exit 0
case "$1" in
start)
echo -n "Starting mailing list manager:"
echo -n " sympa"
start-stop-daemon --start --quiet --pidfile $PIDFILE \
--chuid $OWNER --exec $DAEMON
start-stop-daemon --start --quiet --pidfile $ARCHIVED_PIDFILE \
--chuid $OWNER --exec $ARCHIVED_DAEMON
start-stop-daemon --start --quiet --pidfile $TASK_MANAGER_PIDFILE \
--chuid $OWNER --exec $TASK_MANAGER_DAEMON
if use_db ; then
start-stop-daemon --start --quiet --pidfile $BOUNCED_PIDFILE \
--chuid $OWNER --exec $BOUNCED_DAEMON
fi
echo "."
;;
stop)
echo -n "Stopping mailing list manager:"
echo -n " sympa"
if use_db ; then
start-stop-daemon --stop --quiet --pidfile $BOUNCED_PIDFILE
fi
start-stop-daemon --stop --quiet --pidfile $TASK_MANAGER_PIDFILE
start-stop-daemon --stop --quiet --pidfile $ARCHIVED_PIDFILE
start-stop-daemon --stop --quiet --pidfile $PIDFILE
echo "."
;;
restart|force-reload|reload)
$0 stop
sleep 3
$0 start
;;
*)
echo "Usage: /etc/init.d/sympa {start|stop|restart|reload|force-reload}"
exit 1
;;
esac
exit 0
|