CronJobs Anleitung

Cron Jobs dienen der zeitbasierten Ausführung von bestimmten Prozessen auf einem Server. Es wird festgelegt, wann, wie oft was getan wird. Die Informationen hierzu werden in der sogenannten Crontab gespeichert.

Cronjobs am Beispiel von Turnkey Linux

Turnkey Linux basiert auf Debian 6.0.5 („squeeze“).

Man kann Cronjobs durch Eingabe von

crontab

steuern. Optionen dabei sind

  • crontab -l – listet die Cronjobs auf
  • crontab -e – beginnt den Editor-Modus
  • crontab -r – löscht die Crontab

Beispiel 1

27 18 * * * /etc/webmin/cron/tempdelete.pl

wird

  • in jedem Monat
  • an jedem Tag
  • an allen Wochentagen
  • um 18:27 ausgeführt

Beispiel 2

Every night at 4 o’clock.

0 4 * * *   root    test -x /usr/sbin/cron-apt && /usr/sbin/cron-apt

wird

  • in jedem Monat
  • an jedem Tag
  • an allen Wochentagen
  • um 04:00 ausgeführt

Every hour.

# 0 *   * * *   root    test -x /usr/sbin/cron-apt && /usr/sbin/cron-apt /etc/cron-apt/config2

Every five minutes.

# */5 * * * *   root    test -x /usr/sbin/cron-apt && /usr/sbin/cron-apt /etc/cron-apt/config2

Mit Webmin Cron-Auftrag erstellen

Erstellt wird ein Auftrag mit

  • in jedem Monat
  • an jedem Tag
  • an allen Wochentagen
  • zu allen Stunden
  • alle 5 Minuten

Ausgeführt werden soll

/bin/echo "was ist das">>/home/echotext

Die Usercrontabs sind in folgendem Ordner zu finden:

/var/spool/cron/crontabs

Wenn man in Webmin eingibt:

  • alle Monat
  • alle Tag
  • alle Wochentage
  • alle Stunden
  • alle Minuten

Dann sieht der Eintrag so aus:

* * * * * /bin/echo "was ist das">>/home/echotext

Um mit Webmin einen Cronjob zu erzeugen, der alle 5 Minuten ausgeführt wird, dann müssen die einzelnen Minuteneinträge markiert werden. Dann entsteht dieser Eintrag:

*/5 * * * * /bin/echo "alle 5 Minuten">>/home/echotext2

Mit PHP

Man kann natürlich auch PHP-Scripte ausführen. Dazu muss aber das PHP-command line interface mit

apt-get install php5-cli

installiert werden. Der vollständige Pfad zu PHP ist dann

/usr/bin/php

bzw.

/usr/bin/php5

Jetzt kann man beispielsweise mit

php5 -r 'phpinfo();'>/home/phpinfo.txt

die PHPINFO in eine Datei schreiben.

Sonstiges

Siehe auch

  • cronjob.de
  • cron-job.org