首页 >> 大全

Part2.4——Linux下的定时任务与延时任务

2023-08-06 大全 29 作者:考证青年

目录

一、系统延时任务

1、at命令

2、at任务的黑白名单

(1)为什么要设置任务的黑白名单?

(2)黑名单

(3)白名单

二、系统定时任务

1、时间表示方式

2、系统控制的服务

3、用法(用户级定时任务)

用户级定时任务:

4、的黑白名单(用法同at一样)

(1)黑名单

(2)白名单

5、系统级别的任务

三、处理定时任务的输出

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

具体操作步骤如下:

第一步:编写临时文件管理命令

第二步:命令创建上述任务

第三步:命令根据上述任务清理临时文件

第四步:将清理临时文件的命令创建为系统级任务

四、本章总结

一、系统延时任务 1、at命令

at命令的两种执行方式:

at 11:11

设定任务执行时间

at now+1min

设定任务1分钟后执行

命令参数:

at -l

查看任务列表

at -c 任务号

查看任务内容

at -r 任务号

取消任务执行

2、at任务的黑白名单

核心文件:和

(1)为什么要设置任务的黑白名单?

答:因为要限制某些普通用户不能执行延迟任务,所以要将其分为黑白名单。

(2)黑名单

at.deny> #系统中默认存在,此文件中出现的用户不能执行at命令

(3)白名单

at.allow> #系统中默认不存在,当文件被创建后,普通用户不能再执行at命令,只有在此文件中出现的用户才能执行at命令,并且失效。

二、系统定时任务

在规定时间点对任务进行执行

1、时间表示方式

* * * * *

每分钟

*/2 * * * *

每两分钟

*/2 09-17 * * *

早9点-晚17点的每两分钟

*/2 */2 * * *

每隔两小时每两分钟

*/2 09-17 3,5 1 5

一月的3号5号和每周五的早9晚5的每两分钟

*/2 09-17 * * 5

每周五的早9晚5的每两分钟

2、系统控制的服务

systemctl  status  crond.service        #查看定时任务的服务状态

3、用法(用户级定时任务) 用户级定时任务:

        指定用户         参数 
crontab   -u   root     -e            #编辑定时任务
crontab   -u   root     -l            #查看任务列表
crontab   -u   root     -r            #移除定时任务

第一步:编辑定时任务

执行命令进入编辑模式,编辑定时任务。表示每分钟删除一次/mnt/*的文件。

编辑完成后,系统会把这个任务保存在中。

第二步:查看定时任务

方法一:cat /var/spool/cron/root

方法二: -l

第三步:删除定时任务

crontab -u root -r        #删除超级用户所有的定时任务

这个命令其实删除的就是中的文件。

注意:的定时任务是在“crond.”服务开启的情况下才会执行,服务没有开启,不会执行定时任务

4、的黑白名单(用法同at一样)

核心文件:和

_定时和延时有什么区别_汇编定时延时

(1)黑名单

cron.deny> #系统中默认存在,此文件中出现的用户不能执行命令

(2)白名单

cron.allow> #系统中默认不存在,当文件被创建后,普通用户不能再执行命令,只有在此文件中用户才能执行命令,且失效。

5、系统级别的任务

核心目录:

vim /etc/cron.d/westos         #创建系统级定时任务

无论黑名单还是白名单,都不会影响目录下定时任务的发起及执行。凡是在此目录下的文件中的定时任务都会自动执行。

因为这是一个存放系统级别任务的目录,拥有最高权限,不会受黑白名单的影响。在这个目录下编辑文件,内容为,表示指定时间下用户执行创建文件的任务。这里与之前创建任务不同的地方是,这里必须指定用户。

注意:在下存在很多文件,在添加“cron.allow”或“cron.deny”文件后,只是限定了指定用户创建新的定时任务的权力,这些用户已经创建好的任务不会受到影响。

三、处理定时任务的输出

一些at命名或命令会有输出的,这些输出将以邮件的方式发送给超级用户

~~~~~~~~~~未完待续~~~~~~~~~~~

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

临时文件管理的配置文件:在写入以下命令:

 d    /mnt/westos  1777   root    root     10s
类型   文件文件名称   权限   所有人   所有组   生命周期

具体操作步骤如下:

系统中的临时文件存放目录为,可以看到目录下存在很多文件,这些文件就是系统运行过程中产生的临时文件。

第一步:编写临时文件管理命令

首先在目录下创建文件,文件内容表示“d 目录 权限 所有人 所有组 存在周期”。(为了方便测试,文件周期设置的为10s)

第二步:命令创建上述任务

要对这个文件中的内容生效,需要创建守护进程命令。

systemctl-tmpfiles  --create  /lib/tmpfiles.d/westos.conf
#对刚才编写的管理任务的配置文件创建守护进程,令其生效

执行完创建守护进程命令后,会在下出现下图所示文件

第三步:命令根据上述任务清理临时文件

systemd-tmpfiles  --clean  /lib/tmpfiles.d/westos.conf
#按照配置文件中的内容进行清理

先创建了一个文件“”,然后执行清理命令,但是文件周期不足10秒,所以不会被清理;接着再建立一个文件“”,再次执行清理命令,会看到文件周期超过10 秒的“”被清除了,而文件周期没有超过10 秒的“”没有被清除。

第四步:将清理临时文件的命令创建为系统级任务

将清理临时文件的守护进程命令写成一个,让其每小时过1分钟执行一次。

四、本章总结

1、定时任务只有在“crond.”服务开启的时候才会执行,服务关闭后所有定时任务失效。

2、的黑白名单只会影响普通用户,对超级用户和系统级任务没有影响。

3、在下存在很多文件,在添加“cron.allow”或“cron.deny”文件后,只是限定了指定用户创建新的定时任务的权力,这些用户已经创建好的任务不会受到影响。

4、创建简单的清理系统临时文件的步骤:

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了