系统服务
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * 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:所要执行的指令
使用
确定任务执行
/var/log/cronsystemctl status crond
systemctl start crond
systemctl stop crond
常用命令
/etc/crontab
/etc/cron.daily
/etc/cron.hourly
/etc/cron.monthly
/etc/cron.weekly
/etc/cron.d
默认创建在crontab
-l:列出当前用户的计划任务
-e:编辑当前用户的计划任务
-r:删除当前用户的所有计划任务,即删除 /var/spool/cron/USERNAME
-u:管理指定用户的计划任务,仅 root 有权限
-i:在使用 -r 选项删除所有任务时提示用户确认
/var/spool/cron
下的用户名同名文件夹里常见错误
tail -50f /var/log/cronBAD FILE MODE
文件权限设置错误,使用chmod 644
重新设置即可Permission denied
crontab
必需root
有效用户权限才能写配置文件,使用crontab -e -u username
写入即可。
/etc/cron.allow
优先级高于/etc/cron.deny
/etc/cron.allow:允许使用crontab
命令的用户
#允许 www 使用 crontab 命令
echo "www" >> /etc/cron.allow
/etc/cron.deny:拒绝使用crontab
命令的用户
#拒绝 anonymous 使用 crontab 命令
rm -f /etc/cron.allow
echo "anonymous" > /etc/cron.deny