Synology-NAS – Apps zeitgesteuert aktivieren und deaktivieren

IM EINSATZ?

Dann schau dir UNSEREN LOXKURS an und profitiere von unserem Wissen!

Viele Anwender, die ein Synology-NAS (Affiliate-Link) besitzen, haben sicherlich über das Paket-Zentrum die ein oder andere App (Paket) nachgerüstet. Einmal installiert, rennt die App immer dann, wenn das NAS eingeschaltet ist. Manuell lassen sich die installierten Apps im Paketzentrum einfach über den Button bei der jeweiligen App aktivieren und deaktivieren.

Anders sieht es aus, wenn eine App zeitgesteuert ein- bzw. ausgeschaltet werden soll, was standardmäßig leider nicht vorgesehen ist. Das macht aber gerade dann Sinn, wenn eine ressourcenfressende App bspw. nur nachts aktiviert und tagsüber wieder deaktiviert werden soll. Wie das über einen kleinen Umweg trotzdem zuverlässig funktioniert, wird nachfolgend beschrieben.

Gewünschte App (Paket) ausfindig machen

Zuerst wird eine ssh-Verbindung zum Synology-NAS (Affiliate-Link) aufgebaut, um den Namen der gewünschten App herauszufinden:

1. ssh-Login per Terminal

Damit der ssh-Login auf das Synology-NAS gelingt, muss vorher über das DSM-Interface unter dem Menüpunkt “Systemsteuerung” -> “Terminal” der Haken bei “SSH-Dienst aktivieren” gesetzt werden. Daraufhin erfolgt die ssh-Anmeldung z.B. über die integrierte Terminal-App (MAC OS X) oder Putty (Windows):

ssh root@IP-ADRESSE-DES-SYNOLOGY-NAS

Die IP-Adresse des Synology-NAS (Affiliate-Link) kann im DSM-Interface unter Systemsteuerung – Netzwerk – Netzwerk Schnittstelle herausgefunden werden.

Wichtig ist der Login per “root”, das Passwort ist identisch mit dem des “admin”-Users, über den auch der Login zum normalen DSM-Interface ermöglicht wird.

2. Namen ausfindig machen

Im zweiten Schritt wird der untenstehende Befehl per Copy&Paste in das Terminal-Fenster kopiert und mit der Enter-Taste bestätigt.

cd /var/packages && ls

Als Ergebnis werden die Namen der installierten Apps angezeigt. In diesem Beispiel lautet die Ausgabe wie folgt:

CloudStation  CloudSync     btsync

Nachfolgend wird das installierte btsync-Paket ausgewählt, um diese App nachts automatisch zu aktivieren und tagsüber wieder zu deaktivieren. (Das BTSync-Tool lässt sich über die Paketquelle http://packages.synocommunity.com auf das Synology-NAS (Affiliate-Link) installieren.)

3. Start-Stopp-Befehle im Terminal testen

Sobald der gewünschte App-Name bekannt ist (hier btysnc), kann über das Terminal der jeweilige Start- und Stopp-Befehl manuell getestet werden. Zum Starten wird

/var/packages/btsync/scripts/start-stop-status start

eingegeben und mit Enter bestätigt, bzw. zum Stoppen

/var/packages/btsync/scripts/start-stop-status stop

Wenn das geklappt hat, wird eine entsprechende Rückmeldung ausgegeben:

“Starting BitTorrent Sync …
BitTorrent Sync forked to background. pid = 15032”

bzw.

“Stopping BitTorrent Sync …”

Wenn eine andere App ausgewählt werden möchte, wird bei obigen beiden Befehlen einfach “btsync” durch den entsprechenden Namen der gewünschten App geändert.

4. Timergesteuertes Starten-Stoppen über das DSM-Interface

Die einfachste Möglichkeit, das Starten bzw. Stoppen zu automatisieren, wird direkt über das DSM-Interface unter “Systemsteuerung” -> “Aufgabenplaner” -> “Erstellen” -> “Benutzer-definiertes Skript” bereitgestellt, wie es bspw. auch schon im Artikel Synology-NAS: Verzeichnisse dauerhaft von nervigen temp-Dateien befreien beschrieben wird.

Zum zeitgesteuerten Starten wird im benutzerdefinierten Script als Befehl /var/packages/btsync/scripts/start-stop-status start eingetragen, was den gewünschten Dienst entsprechend startet. Unter dem Reiter Zeitplan lässt sich dann konfigurieren, wann das Script ausgeführt werden soll, in diesem Beispiel immer um 2:00 Uhr nachts (siehe die beiden Screenshots links). Ist der Eintrag gespeichert, wird analog ein zweiter Eintrag für das Stoppen, z.B. um 6:00 Uhr morgens hinzugefügt. Sind die gewünschten Einträge hinterlegt, ist man bereits komplett fertig.

Alternativ zu dieser relativ einfach realisierbaren Variante lassen sich die Start-Stopp-Befehle auch über das Terminal in den crond-Manager des Synology-NAS (Affiliate-Link) hinterlegen.

Das setzt jedoch etwas Grundwissen zum gleich verwendeten vi-Texteditor voraus. Außerdem wird an dieser Stelle nochmal ausdrücklich darauf hingewiesen, dass man bei nachfolgenden Variante wirklich wissen sollte, was man tut, da bei einer falschen Ausführung von Terminal-Befehlen im schlimmsten Fall wichtige Systeminformationen oder auch Daten gelöscht werden können.

Mit dem Befehl

vi /etc/crontab

werden alle bereits vorhandenen Inhalte des cron-Managers angezeigt, die auf keinen Fall gelöscht werden dürfen!

In meinem Fall sind folgende Inhalte bereits vorhanden:

#minute hour    mday    month   wday    who     command
0       0       1       *       *       root    /usr/syno/bin/syno_disk_health_record
10      1       *       *       1,2,3,4,6       root    /usr/syno/bin/synopkg chkupgradepkg
3       22      *       *       2,5     root    /usr/syno/sbin/synoupgrade –fetch-all

Mit dem Cursor navigiert man auf das letzte angezeigte Zeichen der letzten Zeile. Damit man in die Datei schreiben kann, wird der Schreibmodus mit der Taste “a” aktiviert. Dann einmal “Enter” drücken, um in eine neue Zeile zu gelangen. Jetzt können die beiden benötigten Codezeilen eingefügt werden, die das Starten (täglich um 2:00 Uhr nachts) bzw. Stoppen (täglich um 6:00 Uhr morgens) bewirken:

0       2       *       *       *       root    /var/packages/btsync/scripts/start-stop-status start
0       6       *       *       *       root    /var/packages/btsync/scripts/start-stop-status stop

Wichtig: Dabei muss Folgendes beachtet werden, damit die Einträge auch nach einem Systemneustart noch vorhanden sind:

  • Der User “root” darf nicht geändert werden
  • Die einzelnen Feldeinträge müssen mit einem “TAB” getrennt werden (keine Leerzeichen) – deshalb die obigen Einträge unbedingt nochmal im Editor nachbearbeiten und die mehrfachen Leerzeichen zwischen den Feldeinträgen jeweils durch ein “TAB” ersetzen sofern diese per Copy&Paste übernommen wurden

Weitere Beispiele (z.B. für wöchentliche oder monatliche Ausführung) sind im Synology-Wiki zu finden. Hier wird auch erklärt, wie ein Befehl nicht mit dem root-User ausgeführt werden kann. Einen weiteren guten Artikel zum Thema hat jimmybonney auf seinem Blog veröffentlicht.

Daraufhin sollte die Kommandozeile wie folgt aussehen:

Zum Speichern wird erst der Bearbeitungsmodus durch Drücken der “ESC”-Taste verlassen und daraufhin :wq eingegeben und mit der Enter-Taste bestätigt, worauf nach der erfolgreichen Speicherung der Inhalte auch der Editor verlassen wird.

Wichtig: Jetzt muss der crond-Dienst noch neugestartet werden, damit die Änderungen auch greifen:

ps |grep crond|grep -v grep|awk '{print $1}'|xargs kill -HUP

Alternativ kann der crond-Dienst seit der DSM 5.0-Version auch neugestartet werden mit:

restart crond

Hinweis: Wenn eine installierte App über die hier angegebene Methode gestoppt oder gestartet wird, aktualisiert sich die Statusanzeige im Paket-Zentrum auf der DiskStation-Browseroberfäche leider nicht. So bleibt die Statusanzeige weiterhin auf “angehalten”, obwohl die App vorher manuell gestartet wurde (siehe Bild links unten) und ist damit leider nicht mehr wirklich zuverlässig.

Aus meinem täglichen Leben

Die oben beschriebene Vorgehensweise (egal ob über das DSM-Interface oder über das Terminal) ist besonders gut geeignet, um Apps zeitgesteuert zu aktivieren bzw. deaktivieren. Gerade bei Apps, wie dem hier angesprochenen BTSync, welches zur Synchronisation großer Dateimengen genutzt werden kann, macht dies Sinn, damit nicht tagsüber die Internetleitung und Ressourcen des Synology-NAS (Affiliate-Link) von der App geblockt werden. Insgesamt kann auf diese Weise auch sichergestellt werden, dass eingestellte Stromsparmaßnahmen des Synology-NAS (Standby der Festplatte bzw. Standby) durch das zeitgesteuerte Deaktivieren von Apps greifen können, die sonst durch die aktiven Apps verhindert werden würden.

Warum eine so sinnvolle Funktion zum zeitgesteuerten Starten bzw. Stoppen von Apps jedoch nicht benutzerfreundlicher bzw. standardmäßig in der App-Verwaltung vorgesehen ist, bleibt mir insgesamt ein Rätsel.

Affiliate-Links

[easyazon_image align=”none” height=”110″ identifier=”B005NFVCTK” locale=”DE” src=”https://meintechblog.de/wordpress/wp-content/uploads/2015/06/31GRKfEAkL.SL110.jpg” tag=”meintechblog-140418-21″ width=”110″][easyazon_image align=”none” height=”110″ identifier=”B002US9AYC” locale=”DE” src=”https://meintechblog.de/wordpress/wp-content/uploads/2015/06/41APkhab5eL.SL1101.jpg” tag=”meintechblog-140418-21″ width=”110″][easyazon_image align=”none” height=”110″ identifier=”B004RORMF6″ locale=”DE” src=”https://meintechblog.de/wordpress/wp-content/uploads/2015/06/41Xsaw8Wd4L.SL110.jpg” tag=”meintechblog-140418-21″ width=”110″]

3 Kommentare
  1. Hallo.

    Ich bin im Besitz der DS1513+ und habe die Audio Station installiert.
    Meine Multiroomspeaker von Pioneer (4 Stück + AV Receiver) habe ich ebenfalls per Airplay integriert und laufen synchron.

    Meine Frage wäre, ob es möglich ist die Audio Station als „Wecker“ zu nutzen.

    Also würde heissen:
    – Start des Internetradios mit Sender um 5.00 Uhr
    – Stopp des Internetradios um 6.00 Uhr (wenn ich das Haus verlasse)

    Ist dies überhaupt realisierbar und wenn ja wie?
    Habe gesehen es gibt ein Aufgabenmanager, aber da ich von dem Skript schreiben keine Ahnung habe wende ich mich einmal an dieses Forum.

    Besten Dank schon einmal im Voraus

  2. Danke für die hilfreichen Informationen.

    Wie kann man eine erfolgreich getestete App bei jedem NAS-Neustart automatisch ausführen lassen? Also den Befehl “start-stop-status start” nach jedem NAS-Reboot?

    Das wäre insbesondere bei Apps hilfreich, die man sonst nur über das GUI manuell “Ausführen” (=starten) kann.

Schreibe einen Kommentar zu Gerrit Antworten abbrechen

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

Das könnte dir auch gefallen