wok view perdition/stuff/etc/init.d/perdition @ rev 1218

perdition: fix stop & restart
author Pascal Bellard <pascal.bellard@slitaz.org>
date Sun Aug 10 07:47:35 2008 +0000 (2008-08-10)
parents 47c6a0342f00
children e7b65e9636d8
line source
1 #!/bin/sh
2 # /etc/init.d/perdition : Start, stop and restart IMAP/POP3 proxy server
3 # on SliTaz, at boot time or with the command line.
4 #
5 # To start IMAP/POP3 proxy server at boot time, just put perdition in the
6 # $RUN_DAEMONS variable of /etc/rcS.conf and configure options with
7 # /etc/daemons.conf
8 #
9 . /etc/init.d/rc.functions
10 . /etc/daemons.conf
12 NAME=Perdition
13 DESC="IMAP/POP3 proxy server"
14 DAEMON=/usr/sbin/perdition
15 OPTIONS=$PERDITION_OPTIONS
16 PIDFILE=/var/run/perdition
17 PROTOCOLS="pop3 pop3s imap4 imap4s imaps"
18 [ -n "$OPTIONS" ] || OPTIONS="--group=nogroup"
20 case "$1" in
21 start)
22 for i in $PROTOCOLS; do
23 [ -s /etc/perdition/perdition.$i.conf ] || continue
24 if [ -f $PIDFILE.$i/perdition.$i.pid ] ; then
25 echo "$NAME ($i) already running."
26 exit 1
27 fi
28 echo -n "Starting $DESC: $NAME ($i)... "
29 $DAEMON.$i -f /etc/perdition/perdition.$i.conf $OPTIONS \
30 --pid_file $PIDFILE.$i/perdition.$i.pid
31 status
32 done
33 ;;
34 stop)
35 for i in $PROTOCOLS; do
36 [ -s /etc/perdition/perdition.$i.conf ] || continue
37 if [ ! -f $PIDFILE.$i/perdition.$i.pid ] ; then
38 echo "$NAME ($i) is not running."
39 exit 1
40 fi
41 echo -n "Stopping $DESC: $NAME ($i)... "
42 kill `cat $PIDFILE.$i/perdition.$i.pid`
43 status
44 done
45 ;;
46 restart)
47 for i in $PROTOCOLS; do
48 [ -s /etc/perdition/perdition.$i.conf ] || continue
49 if [ ! -f $PIDFILE.$i/perdition.$i.pid ] ; then
50 echo "$NAME ($i) is not running."
51 exit 1
52 fi
53 echo -n "Restarting $DESC: $NAME ($i)... "
54 kill `cat $PIDFILE.$i/perdition.$i.pid`
55 sleep 2
56 $DAEMON.$i -f /etc/perdition/perdition.$i.conf $OPTIONS \
57 --pid_file $PIDFILE.$i/perdition.$i.pid
58 status
59 done
60 ;;
61 reload)
62 for i in $PROTOCOLS; do
63 [ -s /etc/perdition/perdition.$i.conf ] || continue
64 [ -f $PIDFILE.$i/perdition.$i.pid ] && \
65 kill -1 `cat $PIDFILE.$i/perdition.$i.pid`
66 status
67 done
68 ;;
69 *)
70 echo ""
71 echo -e "\033[1mUsage:\033[0m /etc/init.d/`basename $0` [start|stop|restart|reload]"
72 echo ""
73 exit 1
74 ;;
75 esac
77 exit 0