cron
(crond) 工具是 Linux 上面的用来执行周期性任务的工具,比如每天凌晨进行数据统计,定期备份数据库,写缓存数据到硬盘、日志清理等。
以下环境在 Ubuntu 14.04 64位,更多信息查看 crontab 定时任务
基本组成
- 系统服务 :
cron
(crond) (crond 进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务) - 配置文件:以文件方式设置定时任务(在/etc目录下有一个crontab文件,这个就是系统任务调度的配置文件)
- 配置工具 :
crontab
用于调整任务
1 | # 查看当前任务 |
添加任务
1 | $ crontab -e |
出现一个文件,在文件末尾添加一个任务:每天的 04:20 执行一行命令,输出 ‘hello world’ 到 /var/tmp/log 文件
1 | # minute (m), hour (h), day of month (dom), month (mon), |
添加一条任务的格式
1 | * * * * * COMMAND |
crontab 文件的一些例子:
1 | # 每晚的 21:30 重启 apache |
1 | # 列出用户目前的crontab |
其他配置
所有用户定义的 crontab 文件都被保存在 /var/spool/cron
目录中。其文件名与用户名一致。
使用者权限文件:
文件:/etc/cron.deny
,该文件中所列用户不允许使用 crontab 命令
文件:/etc/cron.allow
,该文件中所列用户允许使用 crontab 命令
文件:/var/spool/cron/
,所有用户 crontab 文件存放的目录,以用户名命名
文章来自: https://hanks.pub