Linux系统中延时任务和定时任务的方法剖析(at、crontab、临时文件)

版权声明:本文章是作者原创作品,转载请注明作者 https://blog.csdn.net/weixin_41975471/article/details/87218648

1.系统延时任务

是临时的,采用命令at

at		now+1min
at> rm -rf  /mnt/*                          
at> <EOT>	   ##键入延时任务后,ctrl+d执行,(注意:<EOF>是ctrl+d执行时自动生成的)			

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

注意:当我们设定的任务有输出时,会以邮件的形式发送给配置延时任务的发起者

查看邮件的方法:

mail  -u  root		##查看超级用户的邮件
1			##查看第一封邮件
q			##退出

2.可以执行at延时任务的黑白名单

配置文件:

vim  /etc/at.deny     ##黑名单
vim /etc/at.allow     ##白名单

系统中默认存在黑名单,不存在白名单。黑名单之内的不可用,其他用户可用;白名单内的可用,名单之外不可用。

由此可见,白名单比黑名单更加安全,并且白名单存在时黑名单失效。

3.系统的定时任务

定时任务是永久的,命令crontab

1)crontab中时间的表示方式

* 	 * 	 * 	 * 	 *
#分 	#时 	#天 	#月 	#周
##例如:
*     *    *   *  *                  ##每分钟
*/2   *    *   *  *                  ##每两分钟
*/2 09-17  *   *  *                  ##早上9点到下午17点1每两分钟
*/2  */2   *   *  *                  ##每隔2小时每两分钟
*/2 09-17  3,5 1  5                  ##1月的3号和5号,并且每周5,早上9点到下午17点,每隔2分钟
*/2 09-17  *   *  5                  ##每周周五早9晚5
/ 	#每隔多久
, 	#几和几
- 	#从到什么到什么


2)系统控制crontab的服务

systemctl start crond.service     ##服务开启,定时任务即生效

3)定时任务管理命令

crontab -u root -e		##配置定时任务
crontab -u root -l		##查看root用户下的定时任务列表
crontab -u root -r		##取消定时任务

4)文件方式设定定时任务

配置文件:

vim /etc/cron.d/file
*  *  *  *  * 	 uesrname 	action
   #时间   	 #用户名 	 #任务
#例如:
*/2 * * * *  root   rm  -rf /mnt/*

5)crontab定时任务的黑白名单

配置文件:

/etc/cron.deny             ##黑名单:系统中默认存在,在此文件中出现的用户不能执行crontab
/etc/cron.allow            ##白名单:默认不存在,建立后黑名单失效,名单内可以执行crontab,名单之外不可执行

注意:白名单比黑名单更加安全,白名单建立后黑名单失效,黑白名单都不会影响/etc/cron.d/目录中定时任务的发起及执行

4.系统中临时文件的管理方式

cd /usr/lib/tmpfiles.d/
vim westos.conf
##写入:
d /mnt/westos 777 root root 8s       ##配置westos中的文件在建立8s后才能被清除
systemd-tmpfiles --create /lib/tmpfiles.d/westos.conf    ##执行临时文件配置
systemd-tmpfiles --clean /lib/tmpfiles.d/westos.conf     ##清楚临时文件配置

猜你喜欢

转载自blog.csdn.net/weixin_41975471/article/details/87218648