定时任务 4步搞清Linux任务调度——cron


定时任务 4步搞清Linux任务调度——cron

文章插图
 
1 搞清概念1.1 cron与crondcron 是linux下实现任务调度(定时任务)的一种服务,可以在无需人工干预的情况下运行作业 。
crond 则是 cron 服务的守护进程,与windows下的计划任务类似 。
Linux系统会默认安装cron服务工具,并自动启动crond进程 。
1.2 crontabcrontab 是Linux系统提供的用于设置定时任务的命令行工具 。
【定时任务 4步搞清Linux任务调度——cron】crontab 也指 cron 服务的配置文件,是“cron table”的缩写,语义上即为“任务调度列表” 。
1.3 系统任务调度与用户任务调度Linux的任务调度主要分为两类:
系统任务调度:系统周期性所要执行的工作,比如系统数据备份、临时文件清理、缓存清理等 。
用户任务调度:某个用户定期要执行的工作,比如用户数据备份、定时邮件提醒等,这些工作可由每个用户自行设置 。
2 搞清权限默认情况下,只有root可以使用crontab,而普通用户不可以,会出现如下提示信息:
定时任务 4步搞清Linux任务调度——cron

文章插图
 
root可以通过/etc/cron.allow与/etc/cron.deny两个文件来控制哪个用户有权使用crontab 。这两个文件的内容与格式很简单,将需要配置的用户名写入文件,每个用户名占一行 。
权限规则如下:
 
cron.allow
cron.deny
有权使用crontab的用户范围
1
文件不存在
文件不存在
仅root可使用crontab
2
文件存在
文件不存在
仅cron.allow中的用户可使用crontab
3
文件不存在
文件存在
只要不在cron.deny中的用户都可以使用crontab


    推荐阅读