Linux中系统延时任务的设定


前言

本文主要学在Linux中的系统延时任务的设定,因为在企业中经常会有设置延时任务的需求,比如定时清理日志文件,系统缓存文件,定时发送某些特定文件等。


一、系统延时任务

[root@localhost ~]# at 23:37 ##设定任务执行时间
at> rm -fr /mnt/westos ##任务动作
at> << CTRL +D ##用 ctrl+D 发起任务

[root@localhost ~]# at now+1min ##延时 1 分钟
at> rm -fr /mnt/westos
at> << CTRL +D ##用 ctrl+D 发起任务

at -l查看任务列表
at -c 任务号查看任务内容
at -r 任务号取消指定任务执行

请添加图片描述

请添加图片描述

二、at任务的黑白名单

/etc/at.deny ##系统中默认存在,在此文件中出现的用户不能执行at
/etc/at.allow ##系统中默认不存在,当文件出现,普通用户不能执行at,只有在名单中的用户可以,并且/etc/at.deny 失效
注意:at.deny文件在系统中是默认存在的,只是初始状态下为空,即没有指定哪些用户不能使用at,如果将整个文件删除,将会导致用户使用at时产生权限错误。

请添加图片描述
请添加图片描述

3、系统定时任务

1、crontab 时间表示方式

* * * * * 分别表示:分 时 天 月 周
例如:	*/2 * * * *      ##每两分钟
		*/2 07-17 * * *  ##早 7-5 每两分钟
		*/2 */2 * * *    ##每隔 2 小时每两分钟
		*/2 09-17 * * 5	##每周周五早 95

2、系统控制 crontab 的服务

crond.service##当程序开启时定时任务生效

3、crontab

crontab -e -u-e表示创建crontab任务,-u表示指定用户
crontab -l -u-l表示查看指定crontab任务
crontab -r -u-r表示取消crontab任务

请添加图片描述

请添加图片描述

4、系统级别的cron(文件方式设置定时任务)

[root@localhost ~]# cd /etc/cron.d
[root@localhost cron.d]# vim westos
* * * * * root touch /mnt/lee{1..3}  #每整分 #用户名 操作命令
注意:采用系统级设置时,使用crontab -l无法查看系统级的crontab任务

请添加图片描述

5、crontab 的黑白名单

/etc/cron.deny##系统中默认存在,在此文件中出现的用户不能执行 crontab
/etc/cron.allow##系统中默认不存在,当文件出现,普通用户不能执行 crontab,只有在名单中的用户可以,并且/etc/at.deny 失效,这两个名单都不会影响/etc/cron.d/目录中定时任务的发起及执行

请添加图片描述

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

cd /usr/lib/tmpfiles.d/   #临时文件存储路径
vim westos.conf           #编辑文件,创建任务
d /mnt/westos 777 root root 8s
systemd-tmpfiles --create /usr/lib/tmpfiles.d/xx  #创建为临时文件
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/xx   #清除临时文件

以下为临时文件的配置文件:
请添加图片描述
请添加图片描述

请添加图片描述clean清理是:设置的临时文件没有超过8s的不能被清理,只有超过8s的才能被清理。即8s为他的生命周期。
一般临时文件的清理我们都用定时任务来清理,如下:

请添加图片描述对所有临时文件进行清理:

请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值