Ich habe den Dovecot LDA so konfiguriert, dass er seine Logging-Informationen in ein eigenes File schreibt. Die zugehörige Zeile im Dovecot-Config-File /etc/dovecot/dovecot.conf sieht folgendermaßen aus:
protocol lda {
log_path = /var/log/dovecot-deliver.log
log_timestamp = “%b %d %H:%M:%S ” ….
}
Damit logged dovecot nach /var/log/dovecot-deliver.log.
Soweit so gut. Das funktioniert auch. Nun habe ich im nächsten Schritt defür gesorgt, dass auch dieses Logfile einmal pro Woche rotiert wird. Dazu folgendes File erzeugt: /etc/logrotate.d/dovecot
/var/log/dovecot-deliver.log {
weekly
missingok
rotate 52
compress
delaycompress
notifempty
create 640 vmail vmail
postrotate
if [ -f /var/run/dovecot/master.pid ]; then
/etc/init.d/dovecot restart > /dev/null
fi
endscript
}
Hier ist unbedingt auf die Zeile create 640 vmail vmail zu achten! Ich hatte nämlich ursprünglich einfach ein anderes File kopiert und diese Zeile nicht angepasst. Und dann stand da: create 640 root root.
Das Ergebnis war, dass dovecot keine mails von Postfix angenommen hat. Und Postfix hat die dann ohne zu zögern zurückgeschickt, mit der für den Sender sicherlich hilfreichen Erkenntnis:
(Command died with status 80: “/usr/lib/dovecot/deliver”. Command output: deliver(mrre@gimme-th.at): Fatal: Can’t open log file /var/log/dovecot-deliver.log: Permission denied )
Mann, wie viele Leute werden sich da wohl wieder gewundert haben? Na, anyway, wieder mein übliches Problem: Berechtigungen, Berechtigungen, Berechtigungen!