ich würde gerne ein Script haben, dass alle 10 Minuten nachguckt, ob postfix noch läuft und wenn das nicht so ist, den Dienst startet.
als root:
Code: Alles auswählen
ps a -N | grep -c postfix
auch als root (Recht 755):
Code: Alles auswählen
#!/bin/sh
logfile=/var/log/postfix_check.log
if [ $(/bin/ps a -N | /bin/grep -c postfix) = 0 ];
then
echo "$(date) Postfix Restart" >> $logfile
/etc/init.d/postfix start
else
echo "$(date) Postfix OK" >> $logfile
fi
Ansonsten schreibt er mir auch (nur zum Test) in die Datei, wenn der Dienst läuft.
Wenn ich jetzt aber in die crontab von root reinschreibe, dass die Datei alle 10 Minuten ausgeführt werden soll, schreibt mir das Script alle 10 Minuten, dass postfix läuft. Auch, wenn ich postfix beendet habe.
Wenn ich das Script per Hand ausführe, schreibt er mir das deutsche Datum in die Log-Datei. Wenn es über die crontab läuft, schreibt er mir das englische Datum in die Datei. Mir persönlich egal aber vielleicht gibts da nen Zusammenhang.
crontab -e
Code: Alles auswählen
SHELL=/bin/bash
PATH=/bin:usr/bin:/usr/sbin:
HOME=/root
*/10 * * * * /var/run/postfix_check
hoeffy