Provided by: cron_3.0pl1-128.1ubuntu1_amd64 bug

NAME

       cron - daemon to execute scheduled commands (Vixie Cron)

SYNOPSIS

       cron [-f] [-l] [-L loglevel]

DESCRIPTION

       cron is started automatically from /etc/init.d on entering multi-user runlevels.

OPTIONS

       -f      Stay in foreground mode, don't daemonize.

       -l      Enable  LSB compliant names for /etc/cron.d files. This setting, however, does not
               affect   the   parsing   of   files   under   /etc/cron.hourly,   /etc/cron.daily,
               /etc/cron.weekly or /etc/cron.monthly.

       -n      Include  the  FQDN  in  the  subject  when  sending  mails.  By default, cron will
               abbreviate the hostname.

       -L loglevel
               Tell cron what to log about jobs (errors are logged regardless of this  value)  as
               the sum of the following values:

                   1      will log the start of all cron jobs

                   2      will log the end of all cron jobs

                   4      will log all failed jobs (exit status != 0)

                   8      will log the process number of all cron jobs

               The  default  is  to  log  the  start of all jobs (1). Logging will be disabled if
               levels is set to zero (0). A value of fifteen (15) will select all options.

NOTES

       cron searches its spool area (/var/spool/cron/crontabs) for crontab files (which are named
       after accounts in /etc/passwd); crontabs found are loaded into memory.  Note that crontabs
       in this directory should not be accessed directly - the crontab command should be used  to
       access and update them.

       cron  also  reads  /etc/crontab, which is in a slightly different format (see crontab(5)).
       In  Debian,  the  content  of  /etc/crontab  is   predefined   to   run   programs   under
       /etc/cron.hourly,    /etc/cron.daily,   /etc/cron.weekly   and   /etc/cron.monthly.   This
       configuration is specific to Debian, see the note under DEBIAN SPECIFIC below.

       Additionally, in Debian, cron reads the files in the /etc/cron.d directory.   cron  treats
       the  files  in  /etc/cron.d  as  in the same way as the /etc/crontab file (they follow the
       special format of that file,  i.e.  they  include  the  user  field).  However,  they  are
       independent  of  /etc/crontab:  they  do  not,  for  example, inherit environment variable
       settings from it. This change is specific to Debian see the  note  under  DEBIAN  SPECIFIC
       below.

       Like  /etc/crontab,  the  files in the /etc/cron.d directory are monitored for changes. In
       general, the system administrator should not use /etc/cron.d/, but use the standard system
       crontab /etc/crontab.

       /etc/crontab and the files in /etc/cron.d must be owned by root, and must not be group- or
       other-writable. In contrast to the spool area, the files under /etc/cron.d  or  the  files
       under  /etc/cron.hourly,  /etc/cron.daily, /etc/cron.weekly and /etc/cron.monthly may also
       be symlinks, provided that both the symlink and the file it points to are owned  by  root.
       The  files  under  /etc/cron.d  do  not  need  to  be  executable,  while  the files under
       /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly and /etc/cron.monthly do, as they  are
       run by run-parts (see run-parts(8) for more information).

       cron  then  wakes up every minute, examining all stored crontabs, checking each command to
       see if it should be run in the current minute.  When executing  commands,  any  output  is
       mailed  to  the  owner  of  the  crontab  (or  to the user named in the MAILTO environment
       variable in the crontab, if such exists).  The  children  copies  of  cron  running  these
       processes  have  their  name  coerced  to  uppercase, as will be seen in the syslog and ps
       output.

       Additionally, cron checks each minute to see if its  spool  directory's  modtime  (or  the
       modtime  on  the /etc/crontab file) has changed, and if it has, cron will then examine the
       modtime on all crontabs files and reload those which have changed.  Thus cron need not  be
       restarted  whenever  a crontab file is modified.  Note that the crontab(1) command updates
       the modtime of the spool directory whenever it changes a crontab.

       Special considerations exist when the clock is changed by less than 3 hours,  for  example
       at  the  beginning and end of daylight savings time. If the time has moved forwards, those
       jobs which would have run in the time that was skipped will be run soon after the  change.
       Conversely,  if  the  time  has moved backwards by less than 3 hours, those jobs that fall
       into the repeated time will not be re-run.

       Only jobs that run at a particular time (not specified as @hourly, nor  with  '*'  in  the
       hour  or  minute  specifier) are affected. Jobs which are specified with wildcards are run
       based on the new time immediately.

       Clock changes of more than 3 hours are considered to be corrections to the clock, and  the
       new time is used immediately.

       cron  logs  its  action to the syslog facility 'cron', and logging may be controlled using
       the standard syslogd(8) facility.

ENVIRONMENT

       If configured in  /etc/default/cron  in  Debian  systems,  the  cron  daemon  localisation
       settings environment can be managed through the use of /etc/environment or through the use
       of /etc/default/locale with values from the latter  overriding  values  from  the  former.
       These  files  are  read  and  they  will  be  used to setup the LANG, LC_ALL, and LC_CTYPE
       environment variables. These variables are then used to set the charset  of  mails,  which
       defaults to 'C'.

       This  does NOT affect the environment of tasks running under cron. For more information on
       how to modify the environment of tasks, consult crontab(5)

       The daemon will use, if present, the definition from /etc/timezone for the timezone.

       The environment can be redefined in user's crontab definitions but cron will  only  handle
       tasks in a single timezone.

DEBIAN SPECIFIC

       Debian  introduces  some  changes to cron that were not originally available upstream. The
       most significant changes introduced are:

       —      Support for /etc/cron.{hourly,daily,weekly,monthly} via /etc/crontab,

       —      Support for /etc/cron.d (drop-in dir for package crontabs),

       —      PAM support,

       —      SELinux support,

       —      auditlog support,

       —      DST and other time-related changes/fixes,

       —      SGID crontab(1) instead of SUID root,

       —      Debian-specific file locations and commands,

       —      Debian-specific configuration (/etc/default/cron),

       —      numerous other smaller features and fixes.

       Support for /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly and  /etc/cron.monthly  is
       provided  in  Debian through the default setting of the /etc/crontab file (see the system-
       wide example in crontab(5)).  The default system-wide crontab  contains  four  tasks:  run
       every  hour,  every day, every week and every month. Each of these tasks will execute run-
       parts providing each one of the directories as an argument. These tasks  are  disabled  if
       anacron  is  installed  (except  for  the  hourly  task) to prevent conflicts between both
       daemons.

       As described above, the files under these directories have to be pass some  sanity  checks
       including  the  following:  be  executable,  be owned by root, not be writable by group or
       other and, if symlinks, point to files owned by root. Additionally, the  file  names  must
       conform  to  the  filename  requirements  of  run-parts:  they must be entirely made up of
       letters, digits and can only contain the  special  signs  underscores  ('_')  and  hyphens
       ('-').  Any  file that does not conform to these requirements will not be executed by run-
       parts.  For example, any file containing dots will be ignored.  This is  done  to  prevent
       cron  from  running any of the files that are left by the Debian package management system
       when handling files in /etc/cron.d/ as configuration files (i.e. files  ending  in  .dpkg-
       dist, .dpkg-orig, and .dpkg-new).

       This  feature can be used by system administrators and packages to include tasks that will
       be run at defined intervals. Files created by packages  in  these  directories  should  be
       named after the package that supplies them.

       Support for /etc/cron.d is included in the cron daemon itself, which handles this location
       as the system-wide crontab spool.  This directory can  contain  any  file  defining  tasks
       following  the  format  used in /etc/crontab, i.e. unlike the user cron spool, these files
       must provide the username to run the task as in the task definition.

       Files in this directory have to be owned by root, do not need to be executable  (they  are
       configuration  files,  just  like  /etc/crontab)  and  must  conform  to  the  same naming
       convention as used by run-parts(8): they must consist  solely  of  upper-  and  lower-case
       letters,  digits,  underscores, and hyphens. This means that they cannot contain any dots.
       If the -l option is specified to cron (this option can be setup through /etc/default/cron,
       see  below),  then they must conform to the LSB namespace specification, exactly as in the
       --lsbsysinit option in run-parts.

       The intended purpose of this feature is to allow packages that require  finer  control  of
       their  scheduling  than  the  /etc/cron.{hourly,daily,weekly,monthly} directories to add a
       crontab file to /etc/cron.d. Such files should be named after the  package  that  supplies
       them.

       Also,  the  default configuration of cron is controlled by /etc/default/cron which is read
       by the init.d script that launches the cron daemon. This file determines whether cron will
       read the system's environment variables and makes it possible to add additional options to
       the cron program before it is executed, either to configure its logging or to  define  how
       it will treat the files under /etc/cron.d.

SEE ALSO

       crontab(1), crontab(5), run-parts(8)

AUTHOR

       Paul  Vixie <paul@vix.com> is the author of cron and original creator of this manual page.
       This page has also been modified for Debian by Steve Greenland, Javier  Fernandez-Sanguino
       and Christian Kastner.