empty cron.allow file means that no one (except root) can set jobs.
There are two types of jobs: system jobs and user jobs. Only root can edit
system jobs, whereas any user whose name appears in cron.allow or does
not appear in cron.deny can run user jobs. System jobs are controlled
through the /etc/crontab file, which by default looks like this:
Click here to view code image
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
m h dom mon dow user command
17 root cd / && run-parts -report /etc/cron.hourly
25 6 root test -x /usr/sbin/anacron || ( cd / && run-
parts –report
/etc/cron.daily )
47 6 7 root test -x /usr/sbin/anacron || ( cd / && run-
parts –report
/etc/cron.weekly )
52 6 1 * root test -x /usr/sbin/anacron || ( cd / && run-
parts –report
/etc/cron.monthly )
The first two lines specify which shell should be used to execute the job
(defaults to the shell of the user who owns the crontab file, usually
/bin/bash) and the search path for executables that will be used. It’s
important that you avoid using environment variables in this path statement
because they might not be set when the job runs.
The next line starts with a pound sign (#) and so is treated as a comment and
ignored. The next four lines are the important parts: They are the jobs
themselves.
Each job is specified in seven fields that define the time to run, owner, and
command. The first five commands specify the execution time in quite a
quirky order: minute (0–59), hour (0–23), day of the month (1–31), month of
the year (1–12), and day of the week (0–7). For day of the week, both 0 and 7
are Sunday, which means that 1 is Monday, 3 is Wednesday, and so on. If you
want to specify “all values” (that is, every minute, every hour, every day, and
so on), use an asterisk, *.
The next field specifies the username of the owner of the job. When a job is
executed, it uses the username specified here. The last field is the command to
execute.
So, the first job runs at minute 17, every hour of every day of every month,
and executes the command run-parts /etc/cron.hourly. The
run-parts command is a simple script that runs all programs inside a