Manchmal ist es nötig dass man seinen Server neustarten muss, z.B. weil ein automatisches Sicherheitsupdate einen Neustart erfordert. Dazu muss der Server ersteinmal in der Lage sein Emails zu versenden. Dies lässt sich z.B. mit Postfix und Gmail ermöglichen wie in Postfix mit Gmail als Smarhost konfigurieren beschrieben.

Die Information ob ein Neustart nötig ist erhält man bei Ubuntu vom Paket update-notifier-common welches evtl. erst installiert werden muss

sudo apt-get install update-notifier-common

Sobald ein Update einen Neustart erforderlich macht wird automatisch die Datei /var/run/reboot-required erstellt.

Nun wird ein Skript angelegt, welches überprüft ob die Datei /var/run/reboot-required existiert, wenn ja wird eine Email verschickt.

touch /home/USERNAME/reboot-required.sh

Diese Datei füllen wir mit folgendem Inhalt:

#!/bin/bash
if [ -f /var/run/reboot-required ]; then
echo "Ein Neustart des Servers `hostname` ist erforderlich" | mail -s "Neustart erforderlich" meinname@example.com
fi

und machen sie ausführbar

sudo chmod +x /home/USERNAME/reboot-required.sh

Als letztes wird noch ein Cronjob angelegt, der dieses Skript einmal täglich ausführt. Dadurch wird einmal täglich überprüft ob ein Neustart nötig ist. Wenn ja, wird eine Email versendet.

Dazu in

crontab -e

folgenden Eintrag hinzufügen um die Überprüfung täglich um 07:06 Uhr durchzuführen

07 06    * * *   /home/USERNAME/reboot-required.sh

Dieser Artikel ist lizenziert unter einer Creative Commons Namensnennung 3.0 Deutschland Lizenz.

1 Comment

  1. Guten Abend,

    Ich habe die Datei „reboot-required.sh“ in dem Pfad „/usr/local/script/“ abgelegt und habe entsprechend dies auch so in der Crontab eingetragen, aber leider bekomme ich jeden Tag Mails mit dieser Meldung:/bin/sh: 1: /usr/local/script/reboot-required.sh: not found.

    Natürlich habe ich bei der Einrichtung diesen Befehl ausgeführt: chmod +x /usr/local/script/reboot-required.sh