1 | #!/bin/sh |
---|
2 | |
---|
3 | PATH=/opt/local/var/qmail/bin:/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin |
---|
4 | export PATH |
---|
5 | |
---|
6 | QMAILDUID=`id -u qmaild` |
---|
7 | NOFILESGID=`id -g qmaild` |
---|
8 | |
---|
9 | case "$1" in |
---|
10 | start) |
---|
11 | echo "Starting qmail" |
---|
12 | if svok /opt/local/var/service/qmail-send ; then |
---|
13 | svc -u /opt/local/var/service/qmail-send /opt/local/var/service/qmail-send/log |
---|
14 | else |
---|
15 | echo "qmail-send supervise not running" |
---|
16 | fi |
---|
17 | if svok /opt/local/var/service/qmail-smtpd ; then |
---|
18 | svc -u /opt/local/var/service/qmail-smtpd /opt/local/var/service/qmail-smtpd/log |
---|
19 | else |
---|
20 | echo "qmail-smtpd supervise not running" |
---|
21 | fi |
---|
22 | if [ -d /var/lock/subsys ]; then |
---|
23 | touch /var/lock/subsys/qmail |
---|
24 | fi |
---|
25 | ;; |
---|
26 | stop) |
---|
27 | echo "Stopping qmail..." |
---|
28 | echo " qmail-smtpd" |
---|
29 | svc -d /opt/local/var/service/qmail-smtpd /opt/local/var/service/qmail-smtpd/log |
---|
30 | echo " qmail-send" |
---|
31 | svc -d /opt/local/var/service/qmail-send /opt/local/var/service/qmail-send/log |
---|
32 | if [ -f /opt/local/var/lock/subsys/qmail ]; then |
---|
33 | rm /var/lock/subsys/qmail |
---|
34 | fi |
---|
35 | ;; |
---|
36 | stat) |
---|
37 | svstat /opt/local/var/service/qmail-send |
---|
38 | svstat /opt/local/var/service/qmail-send/log |
---|
39 | svstat /opt/local/var/service/qmail-smtpd |
---|
40 | svstat /opt/local/var/service/qmail-smtpd/log |
---|
41 | qmail-qstat |
---|
42 | ;; |
---|
43 | doqueue|alrm|flush) |
---|
44 | echo "Flushing timeout table and sending ALRM signal to qmail-send." |
---|
45 | /opt/local/var/qmail/bin/qmail-tcpok |
---|
46 | svc -a /opt/local/var/service/qmail-send |
---|
47 | ;; |
---|
48 | queue) |
---|
49 | qmail-qstat |
---|
50 | qmail-qread |
---|
51 | ;; |
---|
52 | reload|hup) |
---|
53 | echo "Sending HUP signal to qmail-send." |
---|
54 | svc -h /opt/local/var/service/qmail-send |
---|
55 | ;; |
---|
56 | pause) |
---|
57 | echo "Pausing qmail-send" |
---|
58 | svc -p /opt/local/var/service/qmail-send |
---|
59 | echo "Pausing qmail-smtpd" |
---|
60 | svc -p /opt/local/var/service/qmail-smtpd |
---|
61 | ;; |
---|
62 | cont) |
---|
63 | echo "Continuing qmail-send" |
---|
64 | svc -c /opt/local/var/service/qmail-send |
---|
65 | echo "Continuing qmail-smtpd" |
---|
66 | svc -c /opt/local/var/service/qmail-smtpd |
---|
67 | ;; |
---|
68 | restart) |
---|
69 | echo "Restarting qmail:" |
---|
70 | echo "* Stopping qmail-smtpd." |
---|
71 | svc -d /opt/local/var/service/qmail-smtpd /opt/local/var/service/qmail-smtpd/log |
---|
72 | echo "* Sending qmail-send SIGTERM and restarting." |
---|
73 | svc -t /opt/local/var/service/qmail-send /opt/local/var/service/qmail-send/log |
---|
74 | echo "* Restarting qmail-smtpd." |
---|
75 | svc -u /opt/local/var/service/qmail-smtpd /opt/local/var/service/qmail-smtpd/log |
---|
76 | ;; |
---|
77 | cdb) |
---|
78 | tcprules /opt/local/etc/tcp.smtp.cdb /opt/local/etc/tcp.smtp.tmp < /opt/local/etc/tcp.smtp |
---|
79 | chmod 644 /opt/local/etc/tcp.smtp.cdb |
---|
80 | echo "Reloaded /opt/local/etc/tcp.smtp." |
---|
81 | ;; |
---|
82 | help) |
---|
83 | cat <<HELP |
---|
84 | stop -- stops mail service (smtp connections refused, nothing goes out) |
---|
85 | start -- starts mail service (smtp connection accepted, mail can go out) |
---|
86 | pause -- temporarily stops mail service (connections accepted, nothing leaves) |
---|
87 | cont -- continues paused mail service |
---|
88 | stat -- displays status of mail service |
---|
89 | cdb -- rebuild the tcpserver cdb file for smtp |
---|
90 | restart -- stops and restarts smtp, sends qmail-send a TERM & restarts it |
---|
91 | doqueue -- schedules queued messages for immediate delivery |
---|
92 | reload -- sends qmail-send HUP, rereading locals and virtualdomains |
---|
93 | queue -- shows status of queue |
---|
94 | alrm -- same as doqueue |
---|
95 | flush -- same as doqueue |
---|
96 | hup -- same as reload |
---|
97 | HELP |
---|
98 | ;; |
---|
99 | *) |
---|
100 | echo "Usage: $0 {start|stop|restart|doqueue|flush|reload|stat|pause|cont|cdb|queue|help}" |
---|
101 | exit 1 |
---|
102 | ;; |
---|
103 | esac |
---|
104 | |
---|
105 | exit 0 |
---|