今天给伙伴们分享一下Linux 计划任务-周期性计划任务,希望看了有所收获。
我是公众号「想吃西红柿」「云原生运维实战派」作者,对云原生运维感兴趣,也保持时刻学习,后续会分享工作中用到的运维技术,在运维的路上得到支持和共同进步!
如果伙伴们看了文档觉得有用,欢迎大家关注我的公众号,获取相关文档。爱运维,爱生活。
相对于 at 是仅执行一次的工作,周期执行的计划任务则是由 crond这个系统服务来控制的,crond进程提交任务的方式与at不同,crond需要读取配置文件,且有固定的文件格式,通过crontab命令管理文件
1、确认cron 服务启动
- 先查看crond服务是否开启,如果没有这项服务就安装
[root@edenluo.com ~]# systemctl status crond
- 安装crond服务
[root@edenluo.com ~]# yum install -y crond
- crond服务启动
[root@edenluo.com ~]# systemctl start crond && systemctl enable crond
[root@edenluo.com ~]# systemctl status crond
● crond.service - Command Scheduler
Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2020-01-13 09:34:03 CST; 2h 0min ago
[root@edenluo.com ~]# systemctl is-enabled crond
enabled
2、cron任务分为两类
1、系统定时任务
- 系统定时配置文件解析 /etc/crontab
[root@edenluo.com home]# cat /etc/crontab
SHELL=/bin/bash # 指定shell
PATH=/sbin:/bin:/usr/sbin:/usr/bin # 指定了系统可执行文件路径
MAILTO=root # 指定了crond的任务执行信息将通过电子邮件发送给root用户,如果MAILTO变量的值为空,则表示不发送任务 执行信息给用户
..