1,延时任务与定时任务的区别
延时任务是指在某个事件触发后,经过一段指定的时间再执行的任务。延时任务通常用于处理需要在未来某个时间点执行的操作,例如用户操作后的反馈、数据处理的延迟执行等。
定时任务是指在固定的时间间隔或特定的时间点重复执行的任务。定时任务通常用于周期性的操作,例如数据备份、日志清理、定时通知等
1.延时任务是一次性的,任务在指定的时间后执行一次;
2.延迟任务使用at命令发起,定时任务使用crontab命令发起
3.定时任务是周期性的,任务会在固定的时间间隔或特定的时间点重复执行。
4.延时任务适用于单次延迟操作,而定时任务适用于需要重复执行的操作。
at
at 命令执行格式为 at [参数] [时间]
参数:-l.-c,-r,d,-v,-V,-f,-m
# systemctl status atd.service //实验前提
#at 加延时的时间
#at -l
#at -c 加任务号
#at -r 加任务号
#at -d 加任务号
#at -V
#at -v加延时时间
#at 延时时间 -f work
#at -m延时时间
1.配置好软件仓库并下载好软件邮件
2.下载要用到的邮件程序,并开启postfix
dnf install postfix
#at -m now+1min
安全方面
/etc/at.deny,/etc/at.allow
#vim /etc/at.deny
#vim /etc/at.allow
at中的黑名单不能发起延时任务
at中的白名单可以发起延时任务
当黑名单与白名单中同时存在一个用户时,白名单权力大过黑名单
crontab命令的执行格式为:crontab –u 用户 –e
参数:-u,-e,-r,-i,-l
#systemctl status crond.service
# crontab -u root -e
# crontab -l
# crontab -r -u root
# crontab -ri -u root
6.定时任务
查看crontab服务状态:systemctl status crond
开启定时服务: systemctl restart crond
语法: crontab [选项]
crontab -e 进入crontab编辑界面。会打开vim编辑
-e 编辑crontab定时任务
-l 查询crontab任务
-r 删除当前用户所有的crontab任务
* * * * *
没颗星星的顺序:分 时 日 月 周
分钟,可以是从0到59之间的任何整数。
小时,可以是从0到23之间的任何整数。
日期,可以是从1到31之间的任何整数。
月份,可以是从1到12之间的任何整数。
星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。
在以上各个字段中,还可以使用以下特殊字符:
(*):代表所有可能的值,例如月份字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。
(,):可以用逗号隔开的值指定一个列表范围
(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”
(/):可以用正斜线指定时间的间隔频率,正斜线可以和星号一起使用,例如*/10,如果用在分钟字段,表示每十分钟执行一次也可以与其他符号配用
用户级别安全优化
/etc/cron.deny,/etc/cron.allow
#vim /etc/cron.deny
#vim /etc/cron.allow
同理