Suchen

Definition „‚Command run on notice‘-Job“ Was ist ein Cronjob?

| Autor / Redakteur: zeroshope / Stephan Augsten

Cronjobs sind Aufgaben, die in Unix-Derivaten und BSD-Betriebssystemen automatisiert ablaufen. Hierfür gibt das System in regelmäßigen Abständen bestimmte Befehle aus. Der Vorteil von Cronjobs ist, dass sich diese stark individualisieren lassen.

Firma zum Thema

Per Cronjob lassen sich wiederkehrende Server-Aufgaben wie Newsletterversand, Datenbankbereinigung oder Statistikerhebung bequem automatisieren.
Per Cronjob lassen sich wiederkehrende Server-Aufgaben wie Newsletterversand, Datenbankbereinigung oder Statistikerhebung bequem automatisieren.
(Bild: kreatikar / Pixabay )

ronjobs können unter allen Betriebssystemen genutzt werden, die ein Cronsystem bzw. einen Cron-Deamon haben. Dabei handelt es sich um Unix-Systeme (macOS, Linux, etc.) bzw. BSD-Systeme („Berkeley Software Distribution“).

Cron steht als Abkürzung für „Command run on notice“ – also „Befehlsausführung bei Benachrichtigung“. Zugleich ist der Ausdruck ein Wortspiel, das an Chronos erinnern soll, der altgriechischen Gottheit der Zeit. Damit wird ausgedrückt, dass im Rahmen eines Cronjobs bestimmte Befehle in vorher definierten Zeitabständen durch das Betriebssystem ausgeführt werden. Routineaufgaben laufen auf diese Weise automatisiert ab.

Voraussetzungen für die Einrichtung von Cronjobs

Um Cronjobs einrichten zu können, müssen folgende Voraussetzungen gegeben sein:

  • eigener Server (dedicated Server)
  • SecureShell (SSH) oder Telnet-Client (für den Zugang)
  • FTP-Programm (für den Upload von Cron-Dateien oder aber Skripten)
  • optional für Cronjobs im Zusammenhang mit Webseiten: Cronjob-Anbieter bzw. Webhosting-Paket, das Cronjobs einschließt
  • optional: Programm für die Einrichtung einer grafischen Benutzeroberfläche (z.B. GNOME), um keine Codes schreiben zu müssen

Individualisierung: der große Vorteil von Cronjobs

Cronjobs haben drei Standardbefehle, die immer funktionieren:

  • 1. PATH: der Weg, auf dem nach Befehlen oder einem Skript gesucht wird
  • 2. SHELL: zeigt an, welcher Interpreter von Kommandos ein Skript auszuführen hat
  • 3. MAILTO: zeigt an, mit welchen Benutzern man Skripte oder die Ergebnisse der Jobs teilen möchte

Dies sind aber nicht alle Möglichkeiten. Nutzer können zudem beliebige Variablen selbst definieren. Cronjobs bieten auf diese Weise hohe Individualisierungsmöglichkeiten. Dies ist ihr großer Vorteil, weil sie so auch in stark unterschiedlichen Nutzungszusammenhängen in der Lage sind, Aufgaben zu automatisieren.

Beispiele für Einsatzmöglichkeiten von Cronjobs

Gängig kommen Cronjobs beispielsweise dafür zum Einsatz, um in regelmäßigen Abständen Backups zu erstellen. Die Bereinigung von Datenbanken ist ebenfalls nicht selten als entsprechend automatisierte Aufgabe anzutreffen. Für Webserver läuft die Verarbeitung von Besucherstatistiken oft als Cronjob ab.

Im Zusammenspiel mit einem Content-Management-System können auf diese Weise zudem automatisiert Newsletter verschickt oder Lagerbestände überprüft werden. Cronjobs können überdies Berichte über Serverauslastungen erstellen oder in Onlineshops bestimmte Informationen neu berechnen und entsprechend ausspielen – beispielsweise Produktbewertungen.

Der Einsatz solcher automatisierten Aufgaben hat allerdings eine Schattenseite: Cronjobs benötigen Ressourcen. Gerade im Zusammenspiel mit einer Webseite ist dies möglicherweise problematisch, da sich beispielsweise Ladezeiten für die Besucher erhöhen können. Es ist deshalb nicht immer sinnvoll, zu viele der Jobs ablaufen zu lassen, schon gar nicht zu Traffic-Peak-Zeiten.

(ID:46655087)