Das Verzeichnis für den Dämon ist /var/spool/cron . Hier schaut der Dämon cron im Verzeichnis tabs nach ob es persönliche Aufgaben gibt. Die sind in Dateien mit dem Benutzernamen des jeweiligen Users abgelegt. Im folgenden Beispiel hat der User tapico mit der Masterdatei cj eine Cron-Job angelegt.
defiant:/var/spool/cron # ls -l tabs insgesamt 4 -rw------- 1 root users 214 2004-05-25 15:19 tapico defiant:/var/spool/cron # cat tabs/tapico # DO NOT EDIT THIS FILE - edit the master and reinstall. # (cj installed on Tue May 25 15:19:44 2004) # (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $) */5 * * * * uptime >> ~/uptime.log
Die gefundenen Cron-Tabelle (engl. crontabs) werden in den Speicher geladen. Daneben konsultiert der Dämon die Datei /etc/crontab, die bei SuSE 9.0 so aussieht.
SHELL=/bin/sh PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin MAILTO=root # # check scripts in cron.hourly, cron.daily, cron.weekly, and cron.monthly # -*/15 * * * * root test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1 59 * * * * root rm -f /var/spool/cron/lastrun/cron.hourly 14 4 * * * root rm -f /var/spool/cron/lastrun/cron.daily 29 4 * * 6 root rm -f /var/spool/cron/lastrun/cron.weekly 44 4 1 * * root rm -f /var/spool/cron/lastrun/cron.monthly
Daneben sorgt das Skript /usr/lib/cron/run-crons dafür, daß die Skripte in den Verzeichnissen /etc/cron.daily, /etc/cron.weekly und /etc/cron.monthly regelmäßig ausgeführt werden. Bei anderen Distributionen erfolgt der Aufruf der Skripte durch das Programm run-parts, das durch den Daemon aufgerufen wird.
Die Dateien im Verzeichnis /etc/cron.daily werden als Erweiterung von /etc/crontab bezeichnet. Dies ermöglicht eine feinere Abstimmung von Aufgaben, als wie sie durch die oben erwähnten Cron-Verzeichnisse angeboten werden.
Damit ist also der Dämon crond für die Ausführung der regelmäßigem System- und Benutzerjobs zuständig. Er wird normalerweise gestartet, wenn Linux bootet und wacht jede Minute auf um zu überprüfen ob ein Job gestartet werden soll. Dabei überprüft er jedes mal die Cron-Tabelle. Sollte sich das Änderungsdatum einer Tabelle geändert haben, dann wird die Tabelle neu in den Speicher geladen. Es ist daher nicht notwendig den Cron-Dämon nach einer Änderung neu zu starten.
Bei der Ausführung werden alle Ausgaben des jeweiligen Jobs per eMail an den Besitzer der Cron-Tabelle gesendet. Es ist natürlich klar, daß Benutzer nur ihre eigenen Jobs und der Superuser alle Jobs bearbeiten kann. Für weitere Informationen über den Cron-Dämon konsultieren Sie bitte die Manual-Page cron(8).