Postfix automatisch neu starten


Postfix automatisch neu starten

Postfix Wie man Netzwerk-Dienste wie z.B. Postfix (auch MTA genannt) überwachen kann, haben wir bereits in unserem anderen Beitrag Dovecot bereits schon gezeigt. Das gleiche Grundscript verwenden wir in einer etwas geänderten Form auch hier, indem wir prüfen ob es einen Prozess gibt, der auf dem Port 25 lauscht. So bauen wir uns mit einfachen Mitteln eine kleine Prozessüberwachung.

Wir schon in unserem Dovecot Beitrag erwähnt können Sie auch Tools wie z.B die DaemonTools verwenden um Ihre Prozesses zu überwachen. Die DaemonTools überwachen alle möglichen aktiven Prozesse und starten diese bei Bedarf neu wenn sie nicht mehr reagieren. Allerdings ist die Einrichtung der DaemonTools nicht ganz einfach und für einige Anwendungsfälle einfach zu groß. Wenn man nur eine Handvoll Dienste überwachen will, dann reicht unser kleines Script meistens schon aus.

/usr/local/sbin/postfix_check_restart.sh

#!/bin/sh

HOST='localhost'
PORT=25
#PORT=143
#HP=@$HOST:$PORT
HP=:$PORT
echo 'Checking to see if Postfix is up...'
if ( lsof -Pni $HP | grep "$PORT (LISTEN)" 2>&1 >/dev/null ); then
 echo 'Postfix is up';
else
 echo 'Postfix is down, restarting...';
 /etc/init.d/postfix restart
 logger -p mail.info postfix_check_restart.sh restarting Postfix
fi

…und nicht vergessen im Crontab das Script aufzurufen 😉

# Postfix Check
* * * * * /usr/local/sbin/postfix_check_restart.sh 2>&1 > /dev/null

Jede Minute prüft das Script ob auf dem Port 25 ein Prozess lauscht. Dadurch gewährleistet, dass der MTA nur kurzzeitig ausfällt. Trotzdem sollte man regelmäßig die Logs prüfen und nach den Gründen suchen wenn der MTA ständig abstürzt und neu gestarten wird!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert