NAME
cron - clock daemon
SYNOPSIS
cron [-d[level]]
DESCRIPTION
The cron daemon executes tasks that must be repeated every
now and then (cron jobs), and tasks that must be run just
once (at jobs). It is normally used to run daily or weekly
system maintenance scripts. What it needs to run and when
is specified in a number of "cron tables", or crontab files
for short. These tables are:
/usr/lib/crontab
/usr/local/lib/crontab
/var/lib/crontab
/var/opt/name/lib/crontab (Minix-vmd only)
/usr/spool/crontabs/user
These files follow the usual pattern: One for the standard
things, one for local tasks per organization, one for tasks
per system, and one crontab per installed package. (Cron
reads /usr/lib/packages to find names of installed packages,
it doesn't just grab everything in /var/opt.) The last set
of files fall outside the normal pattern, they are per user
crontabs that one can create with the crontab(1) command.
The file names in /usr/spool/crontabs/ are login names of
the file owners.
The format of a crontab file is described in crontab(5).
AT jobs
Cron also takes care of the execution of jobs issued by
at(1) that are found in /usr/spool/at/. Cron simply runs
the AT job as if there were an "sh at-job" as a cron job at
the appropriate time under the user-id of the owner of the
script. The script takes care of the rest. See at(1) for
the details.
Job I/O
Standard input, output and error are the same as cron's if
the job is started by the system crontabs or from package
crontabs. This means that output from system jobs usually
ends up on the console and in the log file. Output from
personal cron jobs or at jobs are mailed to the owner of the
job. No mail is sent if the job is silent.
OPTIONS
[-d[level]]
Set the debug level, by default 1. Makes cron print
info on what it happens to be doing. Level 1 just
tells about sleep times and what job is executed, level
2 also shows the internal crontab data on a table load.
(With time fields translated to match those of struct
tm, see ctime(3).)
SIGNALS
Cron takes the following actions when sent one of the fol-
lowing signals:
SIGHUP Reload the crontab tables if they changed since
the last time they were loaded, and reexamine
the AT job spool. Used by at(1) and crontab(1).
SIGUSR1 Increase the debug level by 1.
SIGUSR2 Turn debugging off.
ENVIRONMENT
Cron sets the environment variables USER, LOGNAME, HOME, and
SHELL to the user's login name (2x), home directory, and
shell if a job is executed for a given user. The working
directory is set to the user's home directory. Everything
else is inherited from cron, exactly as cron got it when it
started. Note that commands are always passed to /bin/sh,
not to the user's shell.
System cron jobs are in principle executed with cron's
environment, use -u root or the crontab file
/usr/spool/crontabs/root if you want to give root the same
treatment as ordinary users.
FILES
/usr/lib/crontab Main MINIX 3 crontab file.
/usr/local/lib/crontab Local jobs for all systems in an
organization.
/var/lib/crontab System specific jobs.
/var/opt/name/lib/crontab
Per package jobs for Minix-vmd.
/usr/lib/packages List of installed packages.
/usr/spool/crontabs/user Per user jobs.
/usr/spool/at/* Jobs issued by at(1).
/usr/run/cron.pid Process id of cron when cron is
running. Used by at(1) and cron-
tab(1) to send cron a hangup sig-
nal.
SEE ALSO
at(1), crontab(1).
NOTES
A job is not reissued until a previous instance of it has
exited. The next time to execute is computed from the pre-
vious time it ran. If job issuing lags behind on the system
time then the next time to run it is computed from the
current system time.
BUGS
Cron doesn't like it if the system time is changed. If set
forward then cron will react when it next wakes up by run-
ning all jobs within the skipped time once or twice before
it catches up. Setting the clock backwards makes cron play
dead until the system time passes the old time. (Changing
the system time is bad idea anyway, and not just because of
cron.)
Jobs that fall in the missing hour in a change to Daylight
Saving Time are skipped. Nothing is done in the extra hour
on the change out of DST.
AUTHOR
Kees J. Bot (kjb@cs.vu.nl)