系统定时延迟任务及定时任务

Posted S4061222

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了系统定时延迟任务及定时任务相关的知识,希望对你有一定的参考价值。

提示:

一、系统延时任务

1. at +时间:设定任务执行时间

在这里插入图片描述

2.【ctrl】+【D】发起任务

在这里插入图片描述

3.at -l :查看任务列表

4.at -c job号 :查看任务内容

在这里插入图片描述
在这里插入图片描述

5.at -r job号 :取消任务执行

在这里插入图片描述

二、当任务有输出时,输出会以邮件形式发送给at任务的发起者

(1)安装发送邮件和接收邮件的软件
在这里插入图片描述

(2)root用户执行at任务
在这里插入图片描述

(3)查看超级用户邮件,1:第一封,q:退出

在这里插入图片描述

(4)清空邮件
在这里插入图片描述

三、at任务的黑白名单

所有用户都可执行at任务
在这里插入图片描述

1.黑名单

将用户加入黑名单后,此用户无法执行at任务
在这里插入图片描述
在这里插入图片描述

2.白名单

(1) 默认不存在,当allow出现后deny失效,除去allow中的用户,其它用户都被禁止
在这里插入图片描述

(2) 当用户同时存在白名单和黑名单中,看白名单

在这里插入图片描述

四、系统定时任务

当程序开启时定时任务生效
在这里插入图片描述

1.定时任务保存文件:/var/spool/cron/username

系统中控制定时任务crontab的服务为crond.service,当这一服务开启时定时任务生效
系统中某用户设定的定时任务都保存在/var/spool/cron/username文件中
使用cat username 命令可以看到crontab的任务内容

在这里插入图片描述

2.crontab 时间表示方式

(1)* * * * * ##每分钟
(2)* /2 * * * ##每2分钟
(3)* /2 09-17 * * 5 ##每周周五的早9到下午5点的每隔2分钟

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

3.crontab 命令

(1)crontab -u 用户 -e #编辑定时任务
在这里插入图片描述

当定时任务有输出时,输出会以邮件的形式发送给crontab的发起者, /var/spool/mail/

(2)crontab -u 用户 -r #取消x用户定时任务
(3)crontab -u 用户 -l #查看x用户定时任务
在这里插入图片描述

4.当任务有输出时,输出会以邮件形式发送给crontab任务的发起者

在这里插入图片描述

4.系统级别的cron (文件方式设定定时任务, 超级用户)

crontab命令(用户级别)的定时任务设置方式,可以通过在自定义定时任务目录/etc/cron.d/下编写文件,以文件方式设定系统级别的定时任务。

(1)/etc/cron.d/下编写文件

          • username action

在这里插入图片描述

(2)查看crond.service服务状态,anacron 查看任务是否漏执行,/mnt/下的文件被清理
在这里插入图片描述

5.crontab的黑白名单

(1)白名单系统中默认不存在
在这里插入图片描述

(2)黑名单的用户不能执行延时任务
在这里插入图片描述

(3) 黑白名单同时出现,deny失效
在这里插入图片描述

在这里插入图片描述
(4)黑白名单都不会影响/etc/cron.d/目录中的定时任务的发起和执行

五、执行延时/定时的输出任务,避免接受到邮件

执行延时 / 定时任务的时候(输出:echo/ find),系统每执行一次就会发送一次邮件

方法一. 屏蔽定时任务的输出(at / crontab)

在定时任务中将输出直接放入垃圾箱,此时at / crontab的发起者不会接收到邮件
在这里插入图片描述

方法二.关闭邮件发送功能(crontab)

关闭邮件发送功能,重启定时任务crontab服务crond.service后再次查看邮件, 即crontab的发起者不会接收到有输出的定时任务发送的邮件
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3. crontab的日志:/var/log/cron

六、系统中临时文件的管理方式

1.系统临时文件存放目录:/usr/lib/tmpfiles.d/

在这里插入图片描述在这里插入图片描述
生命周期:超过30天可以被清理
在这里插入图片描述

2.systemd-tmpfiles --create /usr/lib/tmpfiles.d/xxx.conf

在临时文件配置目录/lib/tmpfiles.d/下编写配置文件westos.conf,即在/mnt中建立一个存放临时文件的目录westos,该目录下的临时文件建立完成8秒后可以被清理

在这里插入图片描述systemd-tmpfiles --create使得配置文件westos.conf生效
在这里插入图片描述

3.systemd-tmpfiles --clean /usr/lib/tmpfiles.d/xxx.conf

未到设定时间无法清理
在这里插入图片描述
到达8秒后systemd-tmpfiles --clean即可清理这些临时文件
在这里插入图片描述

以上是关于系统定时延迟任务及定时任务的主要内容,如果未能解决你的问题,请参考以下文章

系统延迟及定时机制

系统延时及定时任务

系统延迟及定时机制

系统延迟及定时机制

Rabbitmq 延迟队列实现定时任务,这才是正确的方式!

linux学习日记之系统定时延时任务