使用3A服务器搭建centos系统 crond 服务详解 cron 是 Linux 下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,可以在无需人工干预的情况下运行作业。
安装 crond 服务
yum install cronie
crond服务启动
systemctl start crond systemctl enable crond crond服务解析 Linux系统调度可以分为两类: 系统任务调度 | 用户任务调度
(1) 系统任务调度: 系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等
crond服务在/etc/目录下有一个crontab文件,这个文件就是系统任务调度的配置文件。 配置文件内容解析
[root@dev etc]# vim /etc/crontab SHELL=/bin/bash # 指定shell PATH=/sbinL:/bin:/usr/sbin:/usr/bin # 指定了系统可执行文件路径 MAILTO=root # 指定了crond的任务执行信息将通过电子邮件发送给root用户,如果MAILTO变量的值为空,则表示不发送任务 执行信息给用户。 HOME=/ # 指定执行命令或脚本时使用的主目录 (2) 用户任务调度: 用户定期要执行的工作,比如用户数据备份、定时邮件提醒等
用户可以使用 crontab 工具来定制自己的计划任务。所有用户定义的crontab 文件都被保存在 /var/spool/cron目录中。其文件名与用户名一致。 可以通过 crontab 命令添加或者编辑需要定时执行的任务 crontab 命令基本参数 crond 服务提供 crontab 命令用于设置 crond 服务
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数 crontab -l //列出某个用户cron服务的详细内容 crontab -r //删除某个用户的cron服务 crontab -e //编辑某个用户的cron服务
特殊字符
- : 代表所有可能的值 , :用逗号隔开的值表示一个范围列表,如 1,2 表示1-2
- :可以在整数中间用中杠表示一个整数范围,如 6-8 , 表示6 7 8 / : 可以用正斜线表示时间间隔频率,如 /10 用于minute字段,表示每10分钟执行一次。
添加定时任务 任务格式: M(分) H(时) D(日) m(月) d(周) command
M : 表示分钟1~59 , 每分钟用*或者 */1表示 H : 表示小时1~23(0表示0点) D : 表示日期1~31 m : 表示月份1~12 d : 表示号星期0~6(0表示星期天) command : 要运行的命令
每分钟执行一次 /root/test.sh脚本
/5 * * * /root/test.sh
每十分钟执行一次
/10 * * * * echo "1";