Jetzt, da du weißt, wie Cronjobs funktionieren und wie du sie überwachen kannst, wird es Zeit für die spannendsten Praxisbeispiele. In diesem Kapitel lernst du verschiedene Cronjobs kennen, die dir im Alltag helfen: von Backups über Systempflege bis hin zu kleinen Automatisierungen.

🔹 1. Automatische Backups

Backups sind einer der wichtigsten Anwendungsfälle für Cron. Verzeichnisse sichern
0 2 * * * tar -czf /home/user/backups/home_$(date +%F).tar.gz /home/user/
Datenbank sichern Für MariaDB oder MySQL:
0 3 * * * mysqldump -u root -pMeinPasswort meine_datenbank > /home/user/backups/db_$(date +%F).sql
  • Läuft jeden Tag um 3 Uhr.
  • Exportiert die Datenbank in eine .sql-Datei.
👉 Für mehr Sicherheit solltest du hier mit Konfigurationsdateien (~/.my.cnf) arbeiten, statt Passwörter direkt einzutragen.

🔹 2. Systempflege automatisieren

Papierkorb leeren
0 0 * * * rm -rf /home/user/.local/share/Trash/*
➡ Löscht jede Nacht um Mitternacht den Papierkorb. Temporäre Dateien aufräumen
0 4 * * 0 find /tmp -type f -mtime +7 -delete
➡ Löscht jeden Sonntag um 4 Uhr alle Dateien im /tmp, die älter als 7 Tage sind. Automatische Updates (vorsichtig nutzen!)
30 2 * * * sudo apt update && sudo apt -y upgrade

🔹 3. Monitoring & Kontrolle

Speicherplatz prüfen
0 8 * * * df -h / >> /home/user/disk_usage.log
➡ Schreibt jeden Morgen um 8 Uhr den Speicherstatus ins Log. Internetverbindung überwachen
*/10 * * * * ping -c 1 8.8.8.8 || echo "$(date): Internet down" >> /home/user/netcheck.log
➡ Prüft alle 10 Minuten die Verbindung zu Google DNS und protokolliert Fehler. CPU-Last überwachen
*/30 * * * * uptime >> /home/user/cpu.log
➡ Alle 30 Minuten wird die Systemlast ins Log geschrieben. Journalprotokolle alle 3 Tage 3 Uhr aufräumen
0 3 * * 0 journalctl --vacuum-time=3d

🔹 4. Kreative Cronjobs

0 9 * * * echo "Guten Morgen, vergiss nicht zu arbeiten!" | wall
➡ Sendet jeden Tag um 9 Uhr eine Nachricht an alle eingeloggten Benutzer. Wetterbericht abrufen (mit curl)
0 7 * * * curl wttr.in/?format=3 >> /home/user/wetter.log
➡ Jeden Morgen um 7 Uhr einen kurzen Wetterbericht ins Log speichern.

🔹 Best Practices für solche Jobs

  1. Immer absolute Pfade angeben (/usr/bin/rsync statt nur rsync).
  2. Ergebnisse in Logdateien umleiten (>> logfile 2>&1).
  3. Jobs schrittweise testen (erst jede Minute, dann auf „echt“ umstellen).
  4. Kritische Jobs (z. B. Updates) lieber mit Vorsicht behandeln.

🔹 Übung

  1. Richte einen Job ein, der jeden Abend dein Dokumente-Verzeichnis in ein Backup-Verzeichnis kopiert.
  2. Erstelle einen Cronjob, der einmal pro Woche alte Dateien in /tmp löscht.
  3. Lege einen Monitoring-Job an, der täglich den freien Speicherplatz in eine Logdatei schreibt.
  4. Bonus: Schreibe dir eine tägliche Erinnerung ins Log oder per E-Mail.

✅ Zusammenfassung

  • Cron eignet sich perfekt für Backups, Systempflege und Monitoring.
  • Mit Befehlen wie tar, rsync, find, ping oder curl kannst du viele Alltagsaufgaben automatisieren.
  • Durch Logdateien und klare Pfadangaben stellst du sicher, dass deine Jobs zuverlässig laufen.
👉 Im nächsten Kapitel kümmern wir uns um Sicherheit & Best Practices – damit deine Cronjobs nicht nur praktisch, sondern auch sicher sind.  

📚 Inhaltsverzeichnis

👉 Cron Kapitel 1: Grundlagen von Cron & dem Task-Scheduler 👉 Cron Kapitel 2: Die Crontab verstehen – Aufbau & Syntax 👉 Cron Kapitel 3: Eigene Cronjobs erstellen – erste Automatisierungen 👉 Cron Kapitel 4: Cronjobs überwachen & Fehler finden 👉 Cron Kapitel 5: Praktische Cron-Beispiele für den Alltag 👉 Cron Kapitel 6: Sicherheit & Best Practices für Cronjobs 👉 Cron Kapitel 7: Erweiterungen – anacron & systemd timers 👉 Cron Kapitel 8: Abschlussprojekt – Dein eigenes Cron-Setup