NAS für beliebige Aktion im monatlichen Intervall Ein- u. Ausschalten 1.7.2

Script zum Einschalten des NAS für die Durchführung von monatlichen Ereignissen. Die QTS eigene Steuerung läßt nur ein wöchentliches Intervall zu, dieses Script dient als Umgehung dieser Beschränkung.

Die verschiedenen Tabellen für eine Ereignisplanung innerhalb des NAS sind unabhängig und bieten nicht die gleichen Optionen.

So kann z.B. beim Einrichten der Sicherungsjobs ein Intervall "monatlich" eingestellt werden, in der Steuerung für die Energieeinstellungen ist jedoch max. ein Intervall von "wöchentlich" möglich.

Sofern das NAS im 24/7 Betrieb arbeitet stellt dies kein Problem dar, ist das NAS jedoch ausgeschaltet, fehlt eine entsprechende Option um es einzuschalten.

Dieses Script umgeht dieses Problem auf folgende Art und Weise:

Wenn das gewünschte Ereignis z.B. am 10. eines jeden Monats ausgeführt werden soll, so wird das NAS wöchentlich eingeschaltet und wieder ausgeschaltet. Das Script prüft an Hand des aktuellen Datums (NTP ist empfohlen), wieviele Tage es noch bis zum 10. des Monats sind. Sind es weniger als 7 Tage (also innerhalb der aktuellen Woche), so werden in der entsprechenden Konfigurationsdatei die Einträge modifiziert, so das das NAS am 10. startet.

Sobald das NAS am 10. startet wird durch das Tagesdatum festgestellt das der aktuelle Tag dem gewünschten Einschaltdatum entspricht und es werden wieder die ursprünglichen Werte für das wöchentliche Einschalten eingetragen.

Dadurch ist sichergestellt, das andere, wöchentlich geplante Ereignisse, wieder wie zuvor ausgeführt werden.

Liegt der 10. nicht im aktuellen Wochenintervall, so werden keine Einträge geändert.

Damit der monatliche Rhythmus immer beibehalten werden kann darf als max. Wert der 28. Tag eingetragen werden, werden höhere Werte eingetragen (29...31), wird durch das Script automatisch der 28. eingetragen.


Das Script verfügt über eine (minimal) Hilfe, die durch den Parameter -h aufgerufen werden kann.

Näheres findet man in der entsprechenden .pdf.

Das Script muss in der crontab des NAS eingetragen werden, damit es ordnungsgemäß funktioniert. Linux und Shell Kenntnisse sind von Vorteil.


Die Zip Datei enthält das Shellscript und die PDF.

Getestet auf QTS 4.2.6 (Legacy) und 4.3.3 (HAL) Firmware.

  • Version 1.7.2

    minor bugfix, version# wird ins log file übernommen.

  • Version 1.7.1

    Minor Bugfix - beim Ausschalten war falsche Aktion als default eingetragen (Start anstelle von Shutdown).

    Fehler wirkte sich nur aus, wenn es zuvor noch keinen Eintrag für den Shutdown an der erwarteten Position gab.

  • Version 1.7.0

    Ersetzen einiger Berechnungen durch Funktionsaufrufe, Error Handler von RedDiabolo eingebaut.

  • Version 1.6.0

    Bugfix - default für PON/POFF wurde nicht benutzt wenn keine Werte beim Aufruf mitgegeben wurden!

  • Version 1.5.0

  • Auch von meiner Seite hier nochmals der Dank an FSC830 für seine Mühen und Einsatz, den angedachten PoC (crontab Änderung ist nach einem Neustart wieder weg) in ein brauchbares Script zu bringen.


    Es macht einfach mehr Spaß an so ein Problem heranzugehen, wenn man nicht alleine herumbrütet und auch andere Sichtweisen und Herangehensweisen eingebracht werden. Zumal auch der Großteils des Scripts von FSC830 stammt. Da bleibt mir nur mehr der eine oder andere Ansatz denn ich noch dazu beitragen kann.


    Obwohl, oder sogar, weil wir unterschiedliche Anforderungen und Voraussetzungen haben (NAS läuft öfters pro Woche, oder wird nur monatlich hochgefahren) können wir beide das Script (mit minimalen Änderungen) verwenden. Es sollte ja von Anfang an, eine "universal" einsetzbare Lösung werden

  • Gefällt mir, dein Ansatz. Finde es generell schade das QNAP es nicht für wichtig hält, selbst einen monatlichen Start oder Neustart oder sonst was, in die Firmware einzubauen.


    Das einzige was mir hier eben nicht passt, ist das Wöchentliche einschalten. Vielleicht schafft QNAP es doch noch dies in die Firmware einzubauen.

    • Ich finde es überhaupt etwas befremdlich das für die unterschiedlichen Zeitsteuerungen unterschiedliche Optionen gibt.

      Eine einheitliche Linie fehlt da völlig.

    • Mal sehen was in den nächsten Monaten dazu kommt, manchmal Dauert es eben etwas "länger" -> Monatlich/Tag suche ich schon länger als Funktion.