Cronjobs auf dem VPS einrichten

Cronjobs sind geplante Aufgaben, die Ihr VPS automatisch zu bestimmten Zeiten ausführt. Damit können Sie Backups erstellen, Logdateien aufräumen, Software aktualisieren oder eigene Skripte regelmäßig starten, ohne jedes Mal manuell eingreifen zu müssen.

Crontab öffnen und bearbeiten

Verbinden Sie sich per SSH mit Ihrem VPS und öffnen Sie den Crontab-Editor mit dem Befehl:

crontab -e

Beim ersten Aufruf werden Sie nach einem Editor gefragt. Wählen Sie nano, wenn Sie keinen Favoriten haben. Im Editor sehen Sie vorhandene Cronjobs oder eine leere Datei, in die Sie neue Einträge schreiben können.

Syntax eines Cronjobs

Jede Zeile in der Crontab folgt diesem Schema:

Minute Stunde Tag Monat Wochentag Befehl

Einige Beispiele:

  • 0 3 * * * /root/backup.sh: führt täglich um 03:00 Uhr das Backup-Skript aus.
  • */15 * * * * /usr/bin/php /var/www/cron.php: führt alle 15 Minuten ein PHP-Skript aus.
  • 0 0 * * 0 apt update && apt upgrade -y: führt jeden Sonntag um Mitternacht ein Systemupdate durch.
  • 30 2 1 * * /root/monatlich.sh: führt am 1. jedes Monats um 02:30 Uhr ein Skript aus.

Der Stern (*) bedeutet jeder Wert. So steht * * * * * für jede Minute. Mit */5 führen Sie einen Befehl alle fünf Einheiten aus.

Cronjob-Ausgabe protokollieren

Standardmäßig sendet Cron die Ausgabe per E-Mail an den Systembenutzer. Wenn auf dem VPS kein Mailsystem eingerichtet ist, leiten Sie die Ausgabe besser in eine Logdatei um:

0 3 * * * /root/backup.sh >> /var/log/backup.log 2>&1

So können Sie später prüfen, ob der Cronjob erfolgreich gelaufen ist. Die Logdatei wächst mit der Zeit. Räumen Sie sie regelmäßig auf oder verwenden Sie logrotate für die automatische Rotation.

Häufige Fehler vermeiden

Geben Sie immer den vollständigen Pfad zu Programmen und Skripten an. Ein Cronjob läuft in einer minimalen Umgebung und kennt nicht denselben PATH wie Ihre Shell. Prüfen Sie den Pfad eines Programms mit which programmname. Achten Sie außerdem darauf, dass Ihr Skript ausführbar ist: chmod +x /root/backup.sh. Testen Sie den Befehl einmal manuell in der Shell, bevor Sie ihn als Cronjob eintragen.

Wie prüfe ich, ob mein Cronjob läuft?

Listen Sie Ihre aktiven Cronjobs mit crontab -l auf. Schauen Sie in die Logdatei, die Sie in der Ausgabeumleitung angegeben haben. Alternativ durchsuchen Sie das Systemlog mit grep CRON /var/log/syslog.

Kann ich Cronjobs als anderer Benutzer anlegen?

Ja, mit crontab -u benutzername -e bearbeiten Sie die Crontab eines anderen Systembenutzers. Dafür benötigen Sie Root-Rechte. Jeder Benutzer hat seine eigene Crontab-Datei.

Was passiert, wenn der VPS zum geplanten Zeitpunkt ausgeschaltet ist?

Der Cronjob wird nicht nachgeholt. Ist der VPS zum geplanten Zeitpunkt nicht aktiv, wird die Aufgabe übersprungen. Für wichtige Aufgaben, die nachgeholt werden müssen, können Sie anacron als Alternative einsetzen.

Einen eigenen VPS für Ihre Projekte? Sehen Sie sich unsere VPS-Hosting-Pakete an.


Kommen Sie nicht weiter? Support-Ticket öffnen, unser Team hilft Ihnen gerne.

Zurück zur Wissensdatenbank