Cronjobs: Aufgaben auf dem VPS automatisieren
Cronjobs führen Scripts automatisch zu bestimmten Zeiten aus.
Cronjobs führen Scripts automatisch zu bestimmten Zeiten aus. Backups, Cleanups, Updates, alles automatisierbar.
Was sind Cronjobs?
Cron ist ein Time-based Job Scheduler. Du definierst:
- Wann? (täglich um 3 Uhr, jede Stunde, etc.)
- Was? (welches Script/Command)
Cron führt es dann automatisch aus.
Crontab öffnen
Jeder User hat eine eigene Crontab:
crontab -e # Eigene Crontab editieren
crontab -l # Crontab anzeigen
sudo crontab -e # Root-Crontab
crontab -u username -e # Crontab von anderem User
Cron-Syntax verstehen
Format: * * * * * command
Position 1: Minute (0-59)
Position 2: Stunde (0-23)
Position 3: Tag (1-31)
Position 4: Monat (1-12)
Position 5: Wochentag (0-7, 0 und 7 = Sonntag)
# Beispiele:
0 3 * * * # Täglich um 3:00 Uhr
*/15 * * * * # Alle 15 Minuten
0 */2 * * * # Alle 2 Stunden
0 0 * * 0 # Sonntags um Mitternacht
0 0 1 * * # Ersten des Monats um Mitternacht
Praktische Beispiele
# Backup täglich um 3 Uhr:
0 3 * * * /root/backup.sh
# Log-Cleanup alle 6 Stunden:
0 */6 * * * find /var/log -name "*.log" -mtime +30 -delete
# WordPress Cron jede Minute:
* * * * * curl -s https://example.com/wp-cron.php > /dev/null
# Certbot Renewal täglich:
0 0 * * * certbot renew --quiet
Output in Datei schreiben
Cronjobs laufen im Hintergrund. Output geht verloren, außer du speicherst ihn:
# Output in Log-Datei:
0 3 * * * /root/backup.sh >> /var/log/backup.log 2>&1
# Errors nur:
0 3 * * * /root/backup.sh 2>> /var/log/backup-errors.log
# Output verwerfen:
0 3 * * * /root/backup.sh > /dev/null 2>&1
Debugging
Cronjob läuft nicht? Checke:
# Cron-Service läuft?
systemctl status cron
# System-Log checken:
grep CRON /var/log/syslog
# Script manuell testen:
bash /root/backup.sh
# Permissions checken:
ls -la /root/backup.sh
chmod +x /root/backup.sh
Fazit
Cronjobs sind essentiell für VPS-Automation. Backups, Cleanups, Monitoring, alles automatisierbar.
Wenn du noch nach einem günstigen Server für deine Cronjobs suchst, sieh dir die aktuellen Netcup-Aktionen an.