Heute geht es darum wie man Cronjob auf Linux Debian einrichten.
Ein Cronjob ist eine geplante Aufgabe, die zu festgelegten Zeiten oder Intervallen auf einem Unix-ähnlichen System ausgeführt wird. cron
ist der Daemon, der diese Jobs verwaltet, und crontab
ist die Datei oder das Tool, mit dem du die Jobs einrichtest.
Voraussetzung
- Ein Debian-basiertes Linux-System (z. B. Debian, Ubuntu).
- Zugriff auf ein Terminal.
- Entsprechende Berechtigungen (Root oder Benutzer mit Zugriff auf
crontab
).
Überprüfen, ob cron
installiert ist
dpkg -l | grep cron
Wenn nichts angezeigt wird, installiere cron
:
sudo apt update sudo apt install cron
Dann stellen wir sicher, dass der Dienst läuft
sudo systemctl enable cron sudo systemctl start cron sudo systemctl status cron
Öffne die Crontab des Benutzers
crontab -e
Wenn du zum ersten Mal eine Crontab öffnest, wirst du möglicherweise gefragt, welchen Editor du verwenden möchtest (z. B. nano
, vim
oder vi
).
Einen bestehenden Cronjob kannst du so aufrufen
crontab -l
Syntax eines Cronjobs
Die Syntax eines Cronjobs besteht aus 5 Zeitfeldern gefolgt von dem auszuführenden Befehl:
* * * * * /pfad/skript.sh - - - - - | | | | | | | | | +----- Tag der Woche (0 - 7, wobei 0 und 7 für Sonntag stehen) | | | +------- Monat (1 - 12) | | +--------- Tag im Monat (1 - 31) | +----------- Stunde (0 - 23) +------------- Minute (0 - 59)
Hier ein paar Beispiele:
- Jede Minute:
* * * * * /pfad/skript.sh
- Täglich um 3:30 Uhr:
30 3 * * * /pfad/skript.sh
- Montags um 12:00 Uhr:
0 12 * * 1 /pfad/skript.sh
- Jeden 1. und 15. eines Monats um 5:00 Uhr:
0 5 1,15 * * /pfad/skript.sh
Erstelle ein Beispiel-Skript
- Erstelle ein Shell-Skript:
nano /home/benutzer/mein_skript.sh
- Füge einen Beispielinhalt hinzu:
#!/bin/bash echo "Cronjob läuft: $(date)" >> /home/benutzer/cronjob.log
- Mach das Skript ausführbar:
chmod +x /home/benutzer/mein_skript.sh
Cronjob eintragen
- Öffne die Crontab:
crontab -e
- Füge den Cronjob hinzu:
* * * * * /home/benutzer/mein_skript.sh
Speichere die Datei (z. B. in nano
mit Ctrl + O
, dann Enter
, und schließe mit Ctrl + X
).
Logs überprüfen
Um zu sehen, ob dein Cronjob ausgeführt wurde, überprüfe das System-Log:
grep CRON /var/log/syslog
Prüfe die Log-Datei deines Skripts (falls verwendet):
cat /home/benutzer/cronjob.log
Abschluss
Du hast erfolgreich einen Cronjob in deinem System hinterlegt!
Ich hoffe dir hat das Tutorial gefallen und viel Erfolg!