Du hast jetzt alle Grundlagen und viele Beispiele kennengelernt.
Im Abschlussprojekt kombinieren wir das Gelernte zu einem kompletten Cron-Setup, das dir Backups erstellt, dein System sauber hält und wichtige Informationen überwacht.

🔹 Ziel des Projekts

Am Ende dieses Kapitels hast du eine vollständige Sammlung von Cronjobs, die:

  • täglich ein Backup anlegen,
  • regelmäßig das System aufräumen,
  • Speicherplatz und Systemlast überwachen,
  • und dir Protokolle bereitstellen, damit du jederzeit den Überblick behältst.

👉 Damit baust du dir eine kleine Automatisierungs-Basis für den Alltag.

🔹 1. Backup automatisieren

Home-Verzeichnis sichern

0 2 * * * tar -czf /home/user/backups/home_$(date +\%F).tar.gz /home/user/
  • Läuft täglich um 2 Uhr.
  • Archiviert dein gesamtes Home-Verzeichnis mit Datum.

Datenbank sichern (falls vorhanden)

0 3 * * * mysqldump -u root -pMeineDBPasswort meine_datenbank > /home/user/backups/db_$(date +\%F).sql

👉 So hast du immer eine aktuelle Kopie deiner Datenbank.

🔹 2. Systempflege

Papierkorb leeren

0 0 * * * rm -rf /home/user/.local/share/Trash/*

Temporäre Dateien bereinigen

0 4 * * 0 find /tmp -type f -mtime +7 -delete

👉 Dein System bleibt schlank und sauber.

🔹 3. Monitoring & Logs

Speicherplatz-Check

0 8 * * * df -h / >> /home/user/monitoring/disk_usage.log 2>&1

CPU-Last protokollieren

*/30 * * * * uptime >> /home/user/monitoring/cpu.log 2>&1

Netzwerk überwachen

*/10 * * * * ping -c 1 8.8.8.8 || echo "$(date): Internet down" >> /home/user/monitoring/netcheck.log

👉 Damit erkennst du Engpässe und Probleme rechtzeitig.

🔹 4. Erweiterungen mit Anacron oder systemd

Falls dein Rechner nicht dauerhaft läuft:

  • Mit Anacron stellst du sicher, dass tägliche Backups trotzdem nachgeholt werden.
  • Mit systemd timers kannst du die Jobs noch flexibler gestalten (z. B. wöchentliche Updates oder Logs im Journal).

🔹 5. Logs organisieren

Lege dir ein eigenes Verzeichnis an:

mkdir -p /home/user/monitoring

🔹 Übung

  1. Richte alle obigen Jobs in deiner Crontab ein (crontab -e).
  2. Teste die Jobs mit kurzen Intervallen (z. B. jede Minute) und prüfe, ob die Logs gefüllt werden.
  3. Passe die Zeitpläne dann auf deine gewünschten Intervalle an (täglich, wöchentlich, …).
  4. Bonus: Richte zusätzlich einen systemd-Timer für dein Backup ein und vergleiche ihn mit deinem Cronjob.

✅ Zusammenfassung

  • Mit Cron kannst du ein komplettes Automatisierungs-Setup bauen.
  • Backups, Aufräumarbeiten und Monitoring sind typische Anwendungsfälle.
  • Mit Logs stellst du sicher, dass alle Jobs wie geplant laufen.
  • Anacron und systemd timers ergänzen Cron dort, wo es an Grenzen stößt.

👉 Damit hast du deinen ersten kompletten Automatisierungs-Workflow unter Linux erstellt. Herzlichen Glückwunsch – du bist jetzt fit im Umgang mit Cron! 🎉