annotate doc/dovecot-initd.sh @ 9308:1072d2b53f72 HEAD

login-proxy: If proxy destination is known to be down, fail immediately. We'll use a simple rule: If connection failed or timed out more recently than it succeeded AND there are currently no clients trying to connect to it, fail it. Since the connect isn't failed unless there is at least one client already trying to connect to it, the proxy notices immediately when the server comes back up and then starts serving it again.
author Timo Sirainen <tss@iki.fi>
date Wed, 12 Aug 2009 14:51:35 -0400
parents c2d55b298ec8
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9010
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1 #!/bin/sh
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
3 # Example /etc/init.d/dovecot script. Change DAEMON if necessary.
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
4 # License is public domain.
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
5
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
6 DAEMON=/usr/local/sbin/dovecot
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
7
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
8 test -x $DAEMON || exit 1
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
9 set -e
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
10
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
11 base_dir=`$DAEMON -a|grep '^base_dir: '|sed 's/^base_dir: //'`
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
12 pidfile=$base_dir/master.pid
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
13
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
14 if test -f $pidfile; then
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
15 running=yes
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
16 else
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
17 running=no
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
18 fi
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
19
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
20 case "$1" in
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
21 start)
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
22 echo -n "Starting Dovecot"
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
23 $DAEMON
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
24 echo "."
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
25 ;;
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
26 stop)
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
27 if test $running = yes; then
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
28 echo "Stopping Dovecot"
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
29 kill `cat $pidfile`
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
30 echo "."
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
31 else
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
32 echo "Dovecot is already stopped."
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
33 fi
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
34 ;;
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
35 reload)
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
36 if test $running = yes; then
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
37 echo -n "Reloading Dovecot configuration"
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
38 kill -HUP `cat $pidfile`
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
39 echo "."
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
40 else
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
41 echo "Dovecot isn't running."
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
42 fi
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
43 ;;
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
44 restart|force-reload)
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
45 echo -n "Restarting Dovecot"
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
46 if test $running = yes; then
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
47 kill `cat $pidfile`
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
48 sleep 1
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
49 fi
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
50 $DAEMON
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
51 echo "."
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
52 ;;
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
53 *)
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
54 echo "Usage: /etc/init.d/dovecot {start|stop|reload|restart|force-reload}" >&2
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
55 exit 1
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
56 ;;
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
57 esac
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
58
c2d55b298ec8 Added example init.d/dovecot script.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
59 exit 0