Skip to main content
Benutzerdefiniertes Skript, dass durch den Cronjob ausgeführt werden soll

Nextcloud Cronjob mit Synology Diskstation erstellen

Dieser Beitrag soll euch zeigen wie ihr mit den Bordmitteln einer Synology Diskstation Cronjobs anlegen könnt. Doch zunächst will ich kurz noch einmal erläutern was Cronjobs sind und wieso es sinnvoll sein kann diese anzulegen.

Viele Betriebssysteme besitzen so genannte Cronsysteme bzw. Crondeamons, die es dem System erlauben zu speziellen Zeiten vorher festgelegte Aufgaben durchzuführen. Diese Jobs werden je nach Konfiguration zu unterschiedlichen Zeiten wiederholt, sodass nicht der Nutzer selbst die Aufgaben anstoßen muss.

Ich denke, man kann sich jetzt schon vorstellen, dass der Anwendungsbereich gigantisch ist. Insbesondere für Webseiten sind Cronjobs eine tolle Sache. Sie stoßen beispielsweise die Datenbankreinigung an oder aktualisieren den RSS Feed für einen. Auch ein automatisierter Newsletterversand ist möglich.

Um einen Cronjob zu erstellen ist es normalerweise notwenig über SSH auf das einzustellende System zuzugreifen und über die Konsole den Cronjob zu konfigurieren. Das schreckt bereits viele Anwender ab und ist mitunter auch gar nicht so einfach.

Seid ihr Nutzer einer Synology Diskstation könnt ihr Cronjobs jedoch relativ einfach über die vorhandenen Bordmittel realisieren. Vorliegend will ich euch zeigen, wie ihr einen Cronjob für den Owncloud Fork Nextcloud in eurer Diskstation einstellt. Nextcloud ist ein Cloudsystem für das heimische Netzwerk und bietet über seine Benutzeroberfläche die Möglichkeit genauso wie bei anderen Clouddienstleistern seine Daten zu verwalten. Nextcloud bietet für die Pflege der Oberfläche verschiedene Möglichkeiten an. So ist es möglich die Datenbankpflege und Hintergrundprozesse durch besagten Cronjob erledigen zu lassen. Standardmäßig verwendet Nextcloud jedoch AJAX. Dabei werden die notwendigen Hintergrundprozesse immer dann ausgelöst, wenn ein Nutzer die Seite besucht. Dies ist aus verschiedensten Gründen jedoch nicht sehr elegant, weshalb dazu geraten wird, dass ganze über einen Cronjob erledigen zu lassen.

Zunächst solltet ihr die „Webstation“ auf eurer Synology Diskstation öffnen. Unter PHP-Einstellungen aktiviert ihr „posix“ in den Erweiterungen. Nextcloud benötigt das Modul zur Verarbeitung des Cronjobs.

Habt ihr die Einstellungen bestätigt, öffnet ihr die Systemsteuerung eurer Diskstation und anschließend den Aufgabenplaner. Dort erstellt ihr eine neue Aufgabe (Erstellen -> Geplante Aufgabe -> Benutzerdefiniertes Skript). Jetzt öffnet sich ein Fenster. Ihr gebt dem Vorgang einen Namen und wählt als Benutzer „root“ aus. Unter dem Reiter Zeitplan stellt ihr nun folgende Werte aus den Screenshots ein.

Damit ist gewährleistet, dass der Cronjob alle 15 Minuten ausgelöst wird und die Hintergrundprozesse ständig wiederholt werden. Unter dem letzten Reiter könnt ihr nun das notwenige Skript einfügen. Außerdem kann euch eure Diskstation bei Fehlern über Email benachrichtigen.

Tragt als Befehl folgenden Code ein:

curl –insecure https://localhost/cron.php

Bitte beachtet jedoch, dass der angegebene Pfad zu eurer Nextcloud Installation führen muss! insecure https sorgt dafür, dass euer cronjob auch ausgeführt werden kann, wenn ihr eure Nextcloud Installation über einen https redirect gesichert habt.

Übernehmt alle Einstellungen und öffnet anschließend eure Nextcloud Weboberfläche. Dort könnt ihr im Administrationsbereich von AJAX auf Cron wechseln und bestätigen.

Ab sofort sollte eure Nextcloud Installation den Cronjob alle 15 Minuten selbstständig ausführen.

 

Wenn dir der Artikel gefallen hat, teile ihn einfach: