Grundlagen der cron-Jobs auf dem Raspberry Pi – Skripte automatisch starten
Automatisierung ohne Umwege
Du hast ein Python-Skript geschrieben, das regelmäßig Sensordaten ausliest? Oder möchtest dein System nachts automatisch sichern oder neu starten?
Dann brauchst du cron.
cron ist unter Raspberry Pi OS der Standard für zeitgesteuerte Aufgaben. Du definierst einfach, wann etwas passieren soll – und cron übernimmt den Rest. Für viele typische Automatisierungen ist das deutlich schlanker als komplexere Lösungen wie systemd.
Was sind cron-Jobs – und wann brauchst du sie?
cron ist ein sogenannter Daemon, also ein Hintergrunddienst, der permanent läuft und prüft, ob geplante Aufgaben ausgeführt werden müssen.
Ein cron-Job ist dabei nichts anderes als: eine definierte Zeit + ein Befehl oder Skript
Typische Anwendungsfälle
• Regelmäßige Messungen (z. B. Temperatur, Luftfeuchtigkeit)
• Automatisches Backup deiner Daten
• Systemwartung (Updates, Logs bereinigen)
• Geplante Neustarts
cron vs. systemd – kurz eingeordnet
• cron → zeitgesteuert („führe um X Uhr aus“)
• systemd → ereignisgesteuert („starte beim Boot“, „halte Dienst am Laufen“)
Für deine typischen Raspberry Pi Projekte (Sensoren, Skripte, APIs) ist cron meist die richtige Wahl.
Die crontab-Syntax verstehen
Das Herzstück ist die sogenannte crontab (cron table).
Eine Zeile besteht immer aus:
|
1 2 3 4 5 6 7 |
* * * * * Befehl │ │ │ │ │ │ │ │ │ └── Wochentag (0–7, Sonntag = 0 oder 7) │ │ │ └──── Monat (1–12) │ │ └────── Tag im Monat (1–31) │ └──────── Stunde (0–23) └────────── Minute (0–59) |
Wichtige Platzhalter
• * → jeder Wert („immer“)
• */5 → alle 5 Einheiten
• 1,15 → mehrere konkrete Werte
• 1-5 → Bereich
Beispiele
Ausdruck Bedeutung
0 9 * * * Jeden Tag um 09:00 Uhr
*/15 * * * * Alle 15 Minuten
0 2 * * 0 Sonntags um 02:00 Uhr
Schritt-für-Schritt: cron-Job einrichten
1. crontab öffnen
|
1 |
crontab -e |
Beim ersten Aufruf wählst du einen Editor (empfohlen: nano).
Wichtig: Nur mit sudo, wenn der Job wirklich als root laufen soll.
2. Job eintragen
Jetzt ergänzt du am Ende der Datei eine neue Zeile.
Wichtig: cron kennt deine PATH-Variablen nicht zuverlässig
→ Verwende immer absolute Pfade
Beispiel: Python-Skript jede Stunde
|
1 |
0 * * * * /usr/bin/python3 /home/pi/sensoren/logger.py |
Beispiel: täglicher Neustart um 3 Uhr
|
1 |
0 3 * * * /sbin/reboot |
3. Speichern
In nano:
• STRG + O → speichern
• Enter
• STRG + X → beenden
Danach erscheint:
|
1 |
installing new crontab |
Dein Job ist jetzt aktiv.
Logging: Fehler sichtbar machen
Ein häufiger Fehler:
Skript läuft nicht – und du weißt nicht warum
Lösung: Ausgabe in Log-Datei umleiten
|
1 |
*/5 * * * * /usr/bin/python3 /home/pi/skript.py >> /var/log/skript.log 2>&1 |
Bedeutung:
• >> → Ausgabe anhängen
• 2>&1 → auch Fehlermeldungen loggen
Tipp aus der Praxis:
Log-Dateien regelmäßig aufräumen, sonst laufen sie voll.
Typische Fehlerquellen (wichtig!)
Diese Punkte kosten dich sonst schnell Zeit:
• falscher Pfad zum Skript
• fehlende Ausführungsrechte (chmod +x)
• falscher Python-Pfad (z. B. venv!)
• Umgebungsvariablen fehlen
• Skript läuft manuell, aber nicht über cron
Teste immer zuerst im Terminal (Beispiel!):
|
1 |
/usr/bin/python3 /home/pi/skript.py |
Fazit
cron ist eines der wichtigsten Werkzeuge auf dem Raspberry Pi, wenn es um Automatisierung geht:
• schnell eingerichtet
• extrem flexibel
• perfekt für Skripte und regelmäßige Aufgaben
Für komplexere Anwendungen kannst du später immer noch auf systemd wechseln – aber für 90 % deiner Projekte reicht cron völlig aus.


Kleiner Hinweis, alle Kommentare werden moderiert.
Dies bedeutet, der Kommentar wird vor der Veröffentlichung durchgelesen und von mir geprüft. Auch behalte ich mir vor, jeden Kommentar zu löschen, der nicht direkt auf das Thema abzielt oder nur den Zweck hat, Leser oder Autoren herabzuwürdigen.