In den Mail-Logs finden Sie folgende Meldung:
dovecot: Fatal: Time just moved backwards by x seconds. This might cause a lot of problems, so I'll just kill myself now. |
Dann beendet sich Ihr Dovecot-Mailserver und Sie können sich nicht mehr mit Ihrem Postfach verbinden.
Grund ist eine Zeitkorrektur auf Ihrem Server (Rechner), welche “in die Vergangenheit” geht. D.h. die Zeit wird zurückgestellt – ob um wenige Sekunden oder mehr ist irrelavant: Der Dovecot Server bemerkt diese Umstellung und beendet sich selbst automatisch.
Lösung / Behebung des Problems
Sie können den Dovecot Server regelmäßig prüfen lassen. Sollte dabei bemerkt werden, dass der DoveCot Mailserver nicht mehr läuft, wird er automatisch wieder gestartet:
nano /usr/local/sbin/dovecot_check_restart.sh |
#!/bin/sh HOST='localhost' #PORT=110 PORT=143 #HP=@$HOST:$PORT HP=:$PORT echo 'Checking to see if Dovecot is up...' if ( /usr/sbin/lsof -Pni $HP | grep "$PORT (LISTEN)" 2>&1 >/dev/null ); then echo 'Dovecot is up'; else echo 'Dovecot is down, restarting...'; /etc/init.d/dovecot restart logger -p mail.info dovecot_check_restart.sh restarting Dovecot fi |
Hinweis zu aktuelleren Linux-Versionen
Es sollte der Pfad zur “lsof” überprüft werden, denn dieser kann unterschiedlich sein. Dann sollte die Zeile 9 oben entsprechend angepasst werden:
if ( /usr/sbin/lsof -Pni $HP | grep "$PORT (LISTEN)" 2>&1 >/dev/null ); then |
Hinweis bei SSL Verbindungen zum Mailserver
Setzen Sie den richtigen Port in Zeile 5:
PORT=993 |
Dann den Aufruf des o.a. Scriptes erlauben (“chmod +x”) und das Script als CronJob einrichten:
chmod +x /usr/local/sbin/dovecot_check_restart.sh |
crontab -e |
Und dort folgende Zeile anfügen:
* * * * * /usr/local/sbin/dovecot_check_restart.sh 2>&1 > /dev/null |
Fertig.
Mehr Informationen finden Sie auch unter http://wiki.dovecot.org/TimeMovedBackwards