Syntax

cron

Beschreibung

Cron sollte aus /sbin/init.d/cron, /etc/rc oder /etc/rc.local heraus gestartet werden. Er startet automatisch als Daemon im Hintergrund, so daß es nicht notwendig ist, ihn mit einem ‚&‘ zu starten.

Cron durchsucht /var/spool/cron/tabs nach crontab Dateien die nach den Namenseinträgen in /etc/passwd benannt sind; die gefundenen crontabs werden in den Arbeitsspeicher geladen. Cron sucht auch nach /etc/crontab das in einem unterschiedlichen Format vorliegt (siehe crontab(5)). Zusätzlich ließt cron die Dateien in /etc/cron.d; die Dateien in /etc/cron.d werden als Erweiterungen zur /etc/crontab-Datei verstanden, das heißt, sie müssen der Syntax dieser Datei folgen und daher das User Feld besitzen. Die Zielsetzung dieses Features ist es, es Paketen zu ermöglichen, die eine feinere Kontrolle ihrer geplanten Ausführung bedürfen, als es die /etc/cron.{daily,weekly,monthly} Verzeichnisse erlauben, eine crontab-Datei ins Verzeichnis /etc/cron.d zu plazieren.

Wie /etc/crontab, so werden auch die Dateien in /etc/cron.d ständig überwacht, ob sich Änderungen ergeben haben. Cron erwacht dann jede Minute und überprüft alle gespeicherten Crontabs, ob sie Jobs enthalten, die in der aktuellen Minute ausgeführt werden sollten. Wenn solche Jobs gefunden werden, dann führt cron sie aus. Wenn Jobs ausgeführt werden, wird jede Ausgabe der Jobs an den User gemailt, dessen Crontab den Jobauftrag enthielt bzw. an den User, der in der MAILTO-Umgebungsvariable genannt ist, falls diese Variable existiert.

Zusätzlich überprüft cron jede Minute, ob sich die Zeitmarke der letzten Veränderung (mtime) seines Spoolverzeichnisses oder die der Datei /etc/crontab verändert hat. Falls sie sich verändert hat, überprüft cron die Zeitmarken aller Dateien in diesen Verzeichnissen und läd die neu, deren Zeitmarken sich verändert haben. Das crontab(1) Kommando verändert die Zeitmarke des Spoolverzeichnisses jedesmal, wenn ein crontab verändert wurde.

Siehe auch

crontab(1) , crontab(5)

Autor

Paul Vixie <paul@vix.com>