Spawnpunkt
Planer-Kalender — für zeitgesteuerte Automatisierung
Linux

Cronjobs Grundlagen

von Spawnpunkt System·09/04/2026
Linux Tutorial

Cronjobs Grundlagen

Cron führt Befehle zu festgelegten Zeiten automatisch aus — der klassische Weg unter Linux, um Backups, Updates oder Wartungsaufgaben zu automatisieren, ohne selbst daran denken zu müssen.

Cron-Syntax verstehenPraktische BeispieleLogging & Fehlersuche
Betriebssystem
Ubuntu / Debian
Schwierigkeit
Einsteiger
Dauer
~15 Minuten

Die Cron-Syntax

Eine Cron-Zeile besteht aus fünf Zeitfeldern gefolgt vom auszuführenden Befehl:

bash
# Minute Stunde Tag Monat Wochentag  Befehl
# *      *      *   *     *          Befehl wird ausgeführt

Jedes Feld akzeptiert eine feste Zahl, ein Sternchen (jeder Wert) oder Listen/Bereiche/Schrittweiten:

bash
0 3 * * *        # täglich um 3:00 Uhr
*/15 * * * *     # alle 15 Minuten
0 0 * * 0        # jeden Sonntag um Mitternacht
0 9-17 * * 1-5   # stündlich zwischen 9 und 17 Uhr, nur werktags
Ein Wecker auf einem PC-Gehäuse — Sinnbild für zeitgesteuerte Automatisierung

Voraussetzungen

  • Beliebige Linux-Distribution (cron ist praktisch überall vorinstalliert)
  • Ein Editor-Grundverständnis (nano/vim)

Die eigene Crontab bearbeiten

Jeder Benutzer hat seine eigene Crontab. Zum Bearbeiten:

bash
crontab -e

Beim ersten Aufruf fragt das System nach dem bevorzugten Editor — nano ist für Einsteiger meist die einfachste Wahl.

Terminal-Sitzung mit einem Kommandozeilen-Werkzeug

Praktische Beispiele

Tägliches Datenbank-Backup um 3 Uhr nachts:

bash
0 3 * * * mysqldump -u root meine_app > /backups/db-$(date +\%F).sql

System-Updates wöchentlich einspielen (Sonntagnacht):

bash
0 4 * * 0 apt update && apt upgrade -y

Bei jedem Systemstart einen Dienst sicherstellen:

bash
@reboot systemctl start meinservice

Ausgabe und Fehler protokollieren

Ohne Umleitung schickt cron die Ausgabe eines Jobs per lokaler Mail an den Benutzer (die oft niemand liest). Sauberer ist es, Ausgabe und Fehler in eine Logdatei umzuleiten:

bash
0 3 * * * /pfad/zum/skript.sh >> /var/log/mein-skript.log 2>&1

Cronjobs laufen mit einer minimalen Umgebung ohne die üblichen Shell-Variablen (PATH etc.). Skripte, die interaktiv einwandfrei laufen, aber per Cron scheitern, brauchen fast immer absolute Pfade statt bloßer Programmnamen.

Alternative: systemd-Timer

Moderne Ubuntu/Debian-Systeme bringen mit systemd-Timern eine Alternative zu cron mit — sie bieten unter anderem besseres Logging über journalctl und können auch verpasste Ausführungen (z. B. nach einem Neustart) nachholen. Für einfache, wiederkehrende Aufgaben bleibt cron aber meist der schnellere, einfachere Weg.

Nützliche Befehle

Cron-Referenz

Eigene Crontab bearbeiten
crontab -e
Eigene Crontab anzeigen
crontab -l
Eigene Crontab komplett löschen
crontab -r
Cron-Ausführungen live verfolgen
sudo tail -f /var/log/syslog | grep CRON

Cron ist einsatzbereit

Wiederkehrende Aufgaben laufen jetzt automatisch, mit sauberem Logging zur Fehlersuche. Für kritische Jobs lohnt sich zusätzlich ein externer Monitoring-Dienst (z. B. Uptime Kuma), der Alarm schlägt, wenn ein erwarteter Job ausbleibt.

CronAutomatisierungLinux