automatischen Cronjob einrichten
Bei Webhosting-Paketen liest man immer wieder von der Anzahl der möglichen Cronjobs. Wobei bislang gilt, je billiger das Paktet, desto weniger Cronjobs (und auch Datenbanken, Traffic,…) sind möglich. Aber was ist eigentlich ein Cronjob?
Laut Wikipedia ist der
Der cron-Daemon ist eine Jobsteuerung von Unix bzw. unixartigen Betriebssystemen wie Linux, BSD oder Mac OS X, die wiederkehrende Aufgaben (cronjobs) automatisch zu einer bestimmten Zeit ausführen kann. (Quelle: http://de.wikipedia.org/wiki/Cronjob)
Cronjobs können also automatisch Programme starten um zum Beispiel immer Montags um 17:26 Uhr ein Backup der Datenbank zu erstellen. Dabei kann die gewünschte Zeit frei nach Tagen, Monaten, Stunden und Minuten gewählt werden.
Wie richtet man einen Cronjob ein?
Je nach Webhoster und von diesem verwendeter Software unterscheidet sich dieser Schritt von Anbieter zu Anbieter. Hier wird er für Parallels Confixx beschrieben. Nach dem Einloggen in diese Benutzeroberfläche, klickt man in der linken Menüleiste auf Einstellungen und dort auf Crontab. Und schon kann es losgehen.
Wie muss eine Cron-Tabelle aussehen?
Die Angabe für einen Cronjob besteht aus sechs Feldern/Informationen, fünf Felder für die Zeitangabe und einem Feld, die den auszuführenden Befehl enthält. Dieses darf wiederum Leerstellen enthalten, um dem Befahl Programm-Parameter zu übergeben.
Mögliche Angaben für die fünf Zeit-Felder:
- 1. Feld – Minute
- 0-59 (mehrere Minuten-Angaben durch Komma getrennt, z.B. 0,30 für xx:00 und xx:30 Uhr)
- * für alle Minuten
- */5 für alle glatt durch 5 teilbaren Minuten (also xx:00, xx:05, xx:10 Uhr, usw.)
- 2. Feld – Stunde
- 0-23 (mehrere Stunden-Angaben durch Komma getrennt, z.B. 10,13,17 für 10:xx, 13:xx und 17:xx Uhr)
- * für alle Stunden
- */4 für alle glatt durch 4 teilbaren Stunden (also 00:xx, 04:xx, 08:xx, 12:xx, 16:xx und 20:xx Uhr)
- 3. Feld – Tag im Monat
- 1-31 (mehrere Tage durch Komma getrennt, z.B. 1,3,7 für 1., 3. und 7. Tag des Monats)
- * für jeden Tag
- 4. Feld – Monat
- 1-12 (mehrere Monate durch Komma getrennt, z.B. 2,6,9 für die Monate Februar, Juni und September)
- * für jeden Monat
- 5. Feld – Wochentag
- 0-7 (mehrere Tage siehe oben, 1 für Montag, usw., Achtung: Sonntag ist 0 und 7!)
- * für jeden Wochentag
Anmerkungen:
- die xx für eine unbekannte Anzahl von Stunden oder Minuten, da sich diese, wenn nicht näher definiert, aus dem Zeitpunkt, zu dem der Cronjob erstellt wurde, ergeben
Mögliche Formatierung für das Befehlsfeld:
6. Feld – Befehl
/bin/echo "Ich laufe jede Minute und geben diesen Satz aus" (An dieser Stelle ist die Kenntnis über die eigene Serverstruktur wichtig, damit die Befehle auch korrekt angesprochen werden.
Mit dem Klick auf “Neuer Cronjob wird dieser gespeichert und gleichzeitig gestartet. Fertig.
einige Beispiele:
* * * * * /bin/echo "Ich laufe zu jeder Minute an jedem Tag im Jahr und geben diesen Satz aus" 5 * * * * /bin/echo "Ich laufe immer fünf Minuten nach jeder vollen Stunde" */25 8-20 * * * /bin/echo "Ich laufe täglich zwischen 08:00 und 20:00 Uhr alle 25 Minuten" 20,30 17 * * 1-5 /bin/echo "Ich laufe MO-FR immer um 17:20 und 17:30 Uhr" 11 11 11 11 * /bin/echo "Ich laufe einmal im Jahr am 11.11 um 11:11 Uhr"
