FreeBSD 5.3 стоит qmail 1.03 + vpopmail 5.4.10 + mysql
Есть скрипт для запуска /etc/rc.d/qmail такого содержания:
#!/bin/sh
#
[ -f /usr/bin/qmail-send ] || exit 0
start() {
echo -n "Starting Qmail: "
qmail-start "`cat /etc/mail/dot-qmail`" splogger qmail &
# SMTP-AUTH
tcpserver -p -DRHl localhost -u 89 -g 89 0.0.0.0 25 /usr/bin/tcp-env \
tcp-env /usr/bin/qmail-smtpd `hostname` /home/vpopmail/bin/vchkpw /bin/true &
# SMTP-AUTH w/SSL
tcpserver -n /etc/ssl/certs/smtps.pem \
-s -p -DRHl localhost -u 89 -g 89 0.0.0.0 465 /usr/bin/tcp-env \
tcp-env /usr/bin/qmail-smtpd `hostname` /home/vpopmail/bin/vchkpw /bin/true &
# POP3
tcpserver -DRHl localhost -u 89 -g 89 0.0.0.0 110 /usr/bin/qmail-popup \
`hostname` /home/vpopmail/bin/vchkpw /usr/bin/qmail-pop3d \
5>>/var/log/maillog Maildir &
# POP3 w/SSL
tcpserver -n /etc/ssl/certs/pop3s.pem \
-s -DRHl localhost -u 89 -g 89 0.0.0.0 995 /usr/bin/qmail-popup \
`hostname` /home/vpopmail/bin/vchkpw /usr/bin/qmail-pop3d Maildir &
#touch /var/lock/subsys/qmail
}
stop() {
echo -n "Shutting down Qmail: "
killall qmail-send
killall tcpserver
#rm -f /var/lock/subsys/qmail
}
case "$1" in
start)
start
;;
stop)
stop
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
Запускается командой /etc/rc.d/qmail start
Все прекрасно работало до того момента пока я не сделал
# /etc/rc.d/qmail stop
Естественно находился под рутом.
Все... После этого почта больше не приходила, ни с локальных доменов ни извне. Все письма складировались в /var/qmail/queue (в подкаталогах), а вот до пользователя не доходили. В /var/log/maillog
qmail: 1123166885.511542 delivery 93: deferral: Unable_to_chdir_to_maildir._(#4.2.1)/
qmail: 1123166885.511784 status: local 0/10 remote 0/20
В чем проблема так и не понял вылечил следующим образом:
Сохранил домен с каталогами пользователя (/home/vpopmail/domains/my_domain). Сохранил базу mysql вернее только таблицу с пользователями. Затем "убил" домен
#vdeldomain my_domain
Создал заново домен
#vadddomain my_domain
Остановил myslq. Переписал обратно таблицу пользователей и каталоги пользователей (/home/vpopmail/domains/my_domain). Запустил mysql и все заработало. Причем пришли и все письма которые лежали в /var/qmail/queue
В чем причина столь странного поведения так и не знаю. Может кто сталкивался подскажет... А может и мой опыт кому-то пригодится :)