Im Cron-Kurs hast du gelernt, wie man zeitgesteuerte Aufgaben automatisiert.
Mit systemd kannst du das Gleiche tun – aber flexibler und besser integriert.
In diesem Kapitel lernst du, wie du
systemd Timer erstellst und verwaltest.
🔹 Was sind Timer in systemd?
- Ein Timer ist eine spezielle Unit-Datei mit der Endung
.timer.
- Er startet zu bestimmten Zeitpunkten einen anderen Dienst (meist eine
.service-Unit).
- Timer sind die systemd-Variante von Cronjobs – nur zuverlässiger und mit besseren Logs.
👉 Vorteil: Du kombinierst einen Timer immer mit einem Service.
🔹 Aufbau eines Timers
Beispiel:
/etc/systemd/system/backup.timer[Unit]
Description=Täglicher Backup-Timer
[Timer]
OnCalendar=*-*-* 02:00:00
Persistent=true
[Install]
WantedBy=timers.target
- OnCalendar= → Zeitangabe (hier: täglich um 2 Uhr).
-
Persistent=true → Verpasste Jobs (z. B. wenn der PC aus war) werden beim nächsten Start nachgeholt.
-
WantedBy=timers.target → Sorgt dafür, dass der Timer beim Boot aktiviert wird.
🔹 Service und Timer zusammen nutzen
Ein Timer allein reicht nicht - er ruft immer einen
Service auf.
Beispiel:
/etc/systemd/system/backup.service[Unit]
Description=Backup Service
[Service]
Type=oneshot
ExecStart=/usr/bin/rsync -a /home/user/ /home/user/backups/
👉 Der Timer
backup.timer startet also den Service
backup.service.
🔹 Timer aktivieren und starten
- systemd neu laden:
sudo systemctl daemon-reload
- Timer starten:
sudo systemctl start backup.timer
- Timer beim Boot aktivieren:
sudo systemctl enable backup.timer
👉 Damit läuft dein Backup jeden Tag automatisch.
🔹 Timer überwachen
👉 Damit hast du volle Kontrolle über deine geplanten Aufgaben.
🔹 Zeitangaben im Detail
Timer nutzen
OnCalendar mit einer flexiblen Syntax:
👉 systemd-Timer sind oft
lesbarer als Cron-Syntax.
🔹 Übung
- Erstelle einen Service
reminder.service, der eine Nachricht in /home/user/reminder.log schreibt.
- Erstelle dazu einen Timer
reminder.timer, der jede Stunde ausgeführt wird.
- Aktiviere und starte den Timer.
- Prüfe mit
systemctl list-timers, ob dein Timer aktiv ist.
- Sieh dir die Logs mit
journalctl -u reminder.service an.
✅ Zusammenfassung
- systemd-Timer sind die moderne Alternative zu Cron.
- Ein Timer (
.timer) aktiviert immer einen Service (.service).
- Mit
OnCalendar legst du Zeitpläne fest, Persistent=true holt verpasste Jobs nach.
- Mit
systemctl list-timers und journalctl kannst du Timer überwachen.
👉
Im nächsten Kapitel kombinieren wir alles Gelernte zu einem
Abschlussprojekt: Eigene Services + Timer, die zusammen eine vollautomatisierte Lösung ergeben.
📚 Inhaltsverzeichnis
👉
systemd Kapitel 1: Grundlagen – Was ist systemd und wie arbeitet es?
👉
systemd Kapitel 2: Dienste steuern mit systemctl
👉
systemd Kapitel 3: Logs und Fehlersuche mit journalctl
👉
systemd Kapitel 4: Bootprozess & Targets verstehen
👉
systemd Kapitel 5: Eigene Services erstellen
👉
systemd Kapitel 6: Timer als moderne Cron-Alternative
👉
systemd Kapitel 7: Abschlussprojekt – Eigene Services & Timer kombinieren