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

本文详细介绍了Linux系统中的延时任务和定时任务,包括使用at任务的黑白名单管理,重点讲解了crontab的时间表示方式、服务控制、任务设定以及输出处理。此外,还提及了系统中临时文件的管理方式。
摘要由CSDN通过智能技术生成
1、系统延时任务(一次性)
# at 12:15	设定任务执行时间
at> rm -rf /mnt/* 	任务动作
at> <EOT>		用crtl+D发起任务(ctrl+C结束任务)
# at now+1min	延时1分钟
# at now+1day	延时1天
# at -l			查看任务列表
# at -c 任务号	查看任务内容
# at -r 任务号	取消任务执行

注意:
	当任务有输出时,输出会以邮件的形式发送给at任务的发起者
	mail -u root			查看超级用户邮件
	1						查看第一封邮件
	q						退出
	> /var/spool/mail/root	清空邮件

在这里插入图片描述

2、at任务的黑白名单
/etc/at.deny	系统中默认存在,在此文件中出现的用户不能执行at
/etc/at.allow	系统中默认不存在,当文件出现,普通用户不能执行at
				只有在名单中的用户可以,并且/etc/at.deny失效
1)黑名单deny
#[root@westosaaaaa ~]# vim /etc/at.deny 
#westos
#[root@westosaaaaa ~]# su - westos 
#[westos@westosaaaaa ~]$ at now+1min
#You do not have permission to use at.
#[westos@westosaaaaa ~]$ exit
#[root@westosaaaaa ~]# su - lee
#[lee@westosaaaaa ~]$ at now+1min
#warning: commands will be executed using /bin/sh
#at> 
#[lee@westosaaaaa ~]$ exit

在这里插入图片描述

2)白名单allow
#[root@westosaaaaa ~]# vim /etc/at.allow
#westos
#[root@westosaaaaa ~]# su - westos
#[westos@westosaaaaa ~]$ at now+1min
#warning: commands will be executed using /bin/sh
#at> 
#[westos@westosaaaaa ~]$ exit
#[root@westosaaaaa ~]# su - lee
#[lee@westosaaaaa ~]$ at now+1min
#You do not have permission to use at.
#[lee@westosaaaaa ~]$ exit

在这里插入图片描述

3、系统定时任务crontab
  • #/var/spool/cron/username 任务保存文件
1) crontab时间表示方式
	分钟 小时 月份第几天 月 周
	*     *    *   *   * 		每分钟
	*/2   *    *   *   *		每2分钟
	*/2 09-17  *   *   *		早7-晚5每两分钟
	*/2   */2  *   *   *		每隔2小时每2分钟
	*/2 09-17 3,5  1   5 		一月的三号和五号以及一月的每个星期五的9点到17点每两分钟执行一次
	*/2 09-17  *   *   5		每周周五早7-晚5每两分钟
2)系统控制crontab的服务
  • crond.service ##当程序开启时定时任务生效

在这里插入图片描述

3)crontab
crontab -e	#新建
crontab -l	#列出
crontab -r	#删除
crontab -u root -e	#新建
* * * * *  touch /mnt/westos{1..5}
crontab -u root -l	#列出
crontab -u root -r	#删除

在这里插入图片描述

在这里插入图片描述

4)系统级别的cron(文件方式设定定时任务)
vim /etc/cron.d/file
* * * * *   username	action
* * * * *   root	rm -fr /mnt/*

在这里插入图片描述

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

黑名单
在这里插入图片描述
白名单
在这里插入图片描述

6)邮件
dnf install postfix mailx -y		#安装
systemctl enable --now postfix	#启动服务
mail -u root	#查看邮件
mail -s "test 1" root	#测试
> /var/spool/mail/root	#删除

在这里插入图片描述

7)cron任务的输出处理

默认情况下如果定时任务有输出,会以邮件形式发送到任务发起用户的邮箱中,以下方法可不形成邮件

方法一:

vim /etc/sysconfig/crond
CRONDARGS= -s/ -m off    
					## -s 用输出生成日志
                    ## -m off 关闭输出邮件功能

在这里插入图片描述

方法二:

vim /etc/crontab
MAILTO=""               # 设定邮件发送路径为空

在这里插入图片描述

4.系统中临时文件的管理方式
cd /var/lib/tmpfiles.d/
vim westos.conf
		d   /mnt/westos 777 root root 10s
	##文件类型 文件名称 文件权限 文件所有人 文件用户组 文件生命周期
systemd-tmpfiles --create /usr/lib/tmpfiles.d/*
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值