调度未来 任务-描述周期性用户
按计划重复运行的作业被称为周期性作业
crond 守护进程管理周期性作业,由 cronie 软件包提供,默认安装并启动
crond 守护进程读取多个配置文件,crontab 命令编辑配置文件
如果计划任务运行失败,crond 会发送邮件给指定用户
注意:crontab 命令使用 -u 选项,以此来管理其他用户的作业。 不推荐
crontab 命令来管理系统作业,而应使用下一节中介绍的方法
crontab -e 调用 vim 进行计划任务的编辑,每行一个作业,支持空行和 #
注释行
crontab 的字段格式是:分 时 日 月 周 命令,其中日和星期是或的
关系
前五个字段全部使用相同的语法规则:
- * 表示始终
- 数字可用于指定分钟数或小时数、日期或者工作日
- x-y 表示范围,x 到 y(含)
- x,y 表示列表,列表也可以包含范围
- */x 表示 x 的时间间隔
注意!!!:因为Linux是以西方人的习惯设计的,他们的一周是以周日开头,而在crontab -e中编辑文本时,时间的间隔不能跨周,也就是像:Sat-Sun之类的,但是我非要表达周五到周日时可以使用:Sun,Fri-Sat就行了,因为周六到周日时跨周的
2.4 周期性用户作业示例
每年 2 月 2 日上午 9 点准点执行命令:/usr/local/bin/yearly_backup
七月每周五的上午 9 点和下午 5 点间,每五分钟向该作业的所有者发送
包含单词 Chime 的电子邮件
每个工作日(周一到周五)上午 9 点执行 mutt 命令,从而将邮件消息
Checking in 发送给收件人 boss@example.com
描述周期性系统作业
系统范围的 crontab 文件与用户的 crontab 类似,唯一的不同是系统范围
的 crontab 文件的命令字段前面有一个额外用户字段,用于指定运行命令
的用户
周期性系统作业,应始终在 /etc/cron.d 目录下创建自定义 crontab 文件
(为防止软件升级覆盖,请不要更新 /etc/crontab 文件)
crontab 系统中还包含需要每小时、每天、每周和每月运行的脚本目录。
这些目录中包含可执行的 shell 脚本(记得 chmod +x script_name),分
别对应于名为 /etc/cron.hourly/、/etc/cron.daily/、/etc/cron.weekly/、/etc/
cron.monthly/ 的目录
/etc/cron.d/0hourly 文件调用 run-parts 命令运行/etc/cron.hourly/* 脚本。
/etc/anacrontab 文件调用 run- parts 命令运行每日、每周和每月的作业
/etc/anacrontab 确保重要的作业始终运行,不会因为系统在应执行作业时
关闭或休眠而意外跳过。例如,如果由于系统重启而导致某个每日运行的
系统作业上次未按时执行,则在系统启动后就会执行此作业。但启动作业
可能会有几分钟的延迟,可以参考 /etc/anacrontab 中 Delay in minutes
参数值
更多推荐


所有评论(0)