question for the list:
I am using qmail-1.03 (patched for bigdns and queuevar), ucspi-tcp-0.88,
daemontools-0.70 and vpopmail-4.9.6-1 on a SuSE GNU/Linux 6.4 box. I have all
the e-mail related daemons (vchkpw, qmail-qmtp, qmail-smtp and qmail-send) in a
setup like the one described in Life With qmail. Every so often, the pop3 logs
(multilog) get flooded with entries like:
@400000003a636a5e07e6c22c tcpserver: fatal: unable to bind: address already used
I haven't the foggiest why this is happening, and so far the solution is to
reboot the machine. My config files are below.
Thanks in advance.
--
***********************************
Matthew H Patterson
Unix Systems Administrator
National Support Center, LLC
Naperville, Illinois, USA
***********************************
/etc/rc.d/qmail:
#!/bin/bash
PATH=/var/qmail/bin:/usr/local/bin:/usr/bin:/bin
case "$1" in
start)
echo -n "Starting qmail: svscan"
cd /var/qmail/supervise
env - PATH="$PATH" svscan &
echo $! > /var/run/svscan.pid
echo "."
;;
stop)
echo -n "Stopping qmail: svscan"
kill `cat /var/run/svscan.pid`
echo -n " qmail"
svc -dx /var/qmail/supervise/*
echo -n " logging"
svc -dx /var/qmail/supervise/*/log
echo "."
;;
stat)
cd /var/qmail/supervise
svstat * */log
;;
doqueue|alrm)
echo -n "Sending ALRM signal to qmail-send"
svc -a /var/qmail/supervise/qmail-send
echo "."
;;
queue)
qmail-qstat
qmail-qread
;;
reload|hup)
echo -n "Sending HUP signal to qmail-send"
svc -h /var/qmail/supervise/qmail-send
echo "."
;;
pause)
echo -n "Pausing qmail-pop3"
svc -p /var/qmail/supervise/qmail-pop3
echo "."
echo -n "Pausing qmail-send"
svc -p /var/qmail/supervise/qmail-send
echo "."
echo -n "Pausing qmail-smtpd"
svc -p /var/qmail/supervise/qmail-smtpd
echo "."
echo -n "Pausing qmail-qmtpd"
svc -p /var/qmail/supervise/qmail-qmtpd
echo "."
;;
cont)
echo -n "Continuing qmail-send"
svc -c /var/qmail/supervise/qmail-send
echo "."
echo -n "Continuing qmail-smtpd"
svc -c /var/qmail/supervise/qmail-smtpd
echo "."
echo -n "Continuing qmail-qmtpd"
svc -c /var/qmail/supervise/qmail-qmtpd
echo "."
echo -n "Continuing qmail-pop3"
svc -c /var/qmail/supervise/qmail-pop3
echo "."
;;
restart)
echo "Restarting qmail:"
echo -n "* Stopping qmail-pop3"
svc -d /var/qmail/supervise/qmail-pop3
echo "."
echo -n "* Stopping qmail-qmtpd"
svc -d /var/qmail/supervise/qmail-qmtpd
echo "."
echo -n "* Stopping qmail-smtpd"
svc -d /var/qmail/supervise/qmail-smtpd
echo "."
echo -n "* Sedning qmail-send SIGTERM and restarting."
svc -t /var/qmail/supervise/qmail-send
echo "."
echo -n "* Restarting qmail-smtpd"
svc -u /var/qmail/supervise/qmail-smtpd
echo "."
echo -n "* Restarting qmail-qmtpd"
svc -u /var/qmail/supervise/qmail-qmtpd
echo "."
echo -n "* Restarting qmail-pop3"
svc -u /var/qmail/supervise/qmail-pop3
echo "."
;;
cdb)
tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
chmod 644 /etc/tcp.smtp*
echo "Reloaded /etc/tcp.smtp."
tcprules /etc/tcp.qmtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.qmtp
chmod 644 /etc/tcp.qmtp*
echo "Reloaded /etc/tcp.qmtp."
;;
help)
cat <<HELP
stop - stops mail service (smtp/qmtp connects refused, no outgoing)
start - starts mail service
pause - temporarily stops mail service (connections accepted, no outgoing)
cont - continues paused mail service
stat - displays status of mail service
cdb - rebuild tcprules for smtp/qmtp
restart - stops and restarts smtp, qmtp, pop3; gives send TERM and restarts
doqueue - senda qmail-send ALRM
reload - sends qmal-send HUP
queue - shows status of queue
alrm - same as doqueue
hup - same as reload
HELP
;;
*)
echo "Improper usage. Type '$0 help' for options.'
exit 1
;;
esac
exit 0
/var/qmail/rc:
#!/bin/bash
exec env - PATH="/var/qmail/bin:$PATH" \
qmail-start './Maildir/'
/var/qmail/supervise/qmail-pop3/run:
#!/bin/bash
/usr/loca//bin/tcpserver -v -R 0 pop3 /var/qmail/bin/qmail-popup \
nsc-support.com /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d \
Maildir 2>&1
/var/qmail/supervise/qmail-pop3/log/run:
#!/bin/bash
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t \
/var/log/qmail/qmail-pop3
/var/qmail/supervise/qmail-qmtpd/run:
#!/bin/bash
QMAILUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
exec /usr/local/bin/softlimit -m 10000000 /usr/local/bin/tcpserver -v -p -x \
/etc/tcp.qmtp.cdb -u $QMAILUID -g $NOFILESGID 0 qmtp \
/var/qmail/bin/qmail-qmtpd 2>&1
/var/qmail/supervise/qmail-qmtpd/log/run:
#!/bin/bash
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t \
/var/log/qmail/qmail-qmtpd
/var/qmail/supervise/qmail-send/run:
#!/bin/bash
exec /var/qmail/rc
/var/qmail/supervise/qmail-send/log/run:
#!/bin/bash
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t \
/var/log/qmail/qmail-send
/var/qmail/supervise/qmail-smtpd/run:
#!/bin/bash
QMAILUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
# export QMAILQUEUE="/var/qmail/bin/qmail-queue"
export QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl"
exec /usr/local/bin/softlimit -m 10000000 /usr/local/bin/tcpserver -v -p -x \
/etc/tcp.smtp.cdb -u $QMAILUID -g $NOFILESGID 0smtp \
/var/qmail/bin/qmail-smtpd 2>&1
/var/qmail/supervise/qmail-smtpd/log/run:
#!/bin/bash
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t \
/var/log/qmail/qmail-smtpd