系统服务

  1. SHELL=/bin/bash
  2. PATH=/sbin:/bin:/usr/sbin:/usr/bin
  3. MAILTO=root
  4. # For details see man 4 crontabs
  5. # Example of job definition:
  6. # .---------------- minute (0 - 59)
  7. # | .------------- hour (0 - 23)
  8. # | | .---------- day of month (1 - 31)
  9. # | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
  10. # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
  11. # | | | | |
  12. # * * * * * user-name command to be executed
  • minute:代表一小时内的第几分,范围 0-59
  • hour:代表一天中的第几小时,范围 0-23
  • day of month: 代表一个月中的第几天,范围 1-31
  • month:代表一年中第几个月,范围 1-12
  • day of week:代表星期几,范围 0-7 (0及7都是星期天)
  • user-name: 要使用什么身份执行该指令,当您使用 crontab -e 时,不必加此字段
  • command to be executed:所要执行的指令

    使用

    确定任务执行
    1. systemctl status crond
    2. systemctl start crond
    3. systemctl stop crond
    /var/log/cron

    常用命令

    /etc/crontab
    /etc/cron.daily
    /etc/cron.hourly
    /etc/cron.monthly
    /etc/cron.weekly
    /etc/cron.d
    1. crontab
    2. -l:列出当前用户的计划任务
    3. -e:编辑当前用户的计划任务
    4. -r:删除当前用户的所有计划任务,即删除 /var/spool/cron/USERNAME
    5. -u:管理指定用户的计划任务,仅 root 有权限
    6. -i:在使用 -r 选项删除所有任务时提示用户确认
    默认创建在/var/spool/cron下的用户名同名文件夹里

    常见错误

    tail -50f /var/log/cron

    BAD FILE MODE

    文件权限设置错误,使用chmod 644重新设置即可

    Permission denied

    crontab必需root有效用户权限才能写配置文件,使用crontab -e -u username写入即可。

/etc/cron.allow优先级高于/etc/cron.deny
/etc/cron.allow:允许使用crontab命令的用户

  1. #允许 www 使用 crontab 命令
  2. echo "www" >> /etc/cron.allow

/etc/cron.deny:拒绝使用crontab命令的用户

  1. #拒绝 anonymous 使用 crontab 命令
  2. rm -f /etc/cron.allow
  3. echo "anonymous" > /etc/cron.deny