Serverprogramme automatisiert neustarten

von | Aug 16, 2015

Da auf meinem Mail-Server des Öfteren der Apache2 Webserver abgestützt ist, möchte ich Euch hier zeigen, wie Ihr Serverprogramme automatisiert neustarten könnt. Dazu habe ich nun ein Script erstellt, welches den Apache2 im Falle eines Absturzes erneut startet. Das Script wird mithilfe von Cron alle 5 Minuten ausgeführt und prüft, ob der Server noch läuft. Tut er das nicht, so wird er vom Script gestartet. Dadurch beträgt die Ausfallzeit des Webservers maximal 5 Minuten.

Als erstes erstellen wir folgende Datei mit der Endung .sh [dateiname.sh]:

#!/bin/sh

ps auxw | grep apache2 | grep -v grep > /dev/null

if [ $? != 0 ]
then
        /etc/init.d/apache2 start > /dev/null
fi

Danach machen wird die Datei ausführbar:

chmod +x dateiname.sh

Anschließend editieren wir die crontab:

crontab -e

und fügen folgende Zeile hinzu:

*/5 * * * * ~/dateiname.sh

Was genau passiert:
Im Script wird geschaut, ob es einen Prozess mit dem Name apache2 gibt. Gibt es einen, wird das Script ohne weiteres zu tun beendet. Gibt es keinen, wird der apache2 gestartet.
Der Cron-Job ruft alle 5 Minuten das Script dateiname.sh aus dem Home-Verzeichnis des Users auf.

Wir nutzen Cookies, um Dir den bestmöglichen Service auf unserer Webseite zu bieten. mehr Informationen

Die Cookie-Einstellungen auf dieser Website sind auf "Cookies zulassen" eingestellt, um das beste Surferlebnis zu ermöglichen. Wenn du diese Website ohne Änderung der Cookie-Einstellungen verwendest oder auf "Akzeptieren" klickst, erklärst du sich damit einverstanden.

Schließen