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

定时任务的最大时间单位是月

1.系统延时任务

at 23:37 ##设定任务执行时间
at>rm -fr /mnt/*

利用ctrl +d 结束at界面并发起任务动作
at -l ##查看任务队列
at -r 任务号 ##取消任务
at -c ## 查看任务内容
在这里插入图片描述
at now+1min ##1分钟执行
echo hello westos
当命令有输出时,会以邮件的形式发给当前用户
实验条件:

需要搭建软件仓库
下载软件
postfixx.x86_64 mailfixx.x86_64
打开邮件服务
在这里插入图片描述
在这里插入图片描述
at命令:系统所有用户都是可以执行的
限制at命令执行的使用者
白名单的优先级高
man 5 at.deny
在这里插入图片描述

黑名单目录:/etc/at.deny
白名单:/etc/at.allow 系统中默认不存在
注:白名单创建之后,所有普通用户是不能执行at命令,只有白名单用户可以执行at

演示:
当用户黑名单中有linux
在这里插入图片描述
此时黑名单依旧存在
在这里插入图片描述
注:对root用户权限的管理是不现实的!

系统的定时任务

实验前提
服务名称:
在这里插入图片描述

实验
min hour day mouth week
@ @ @ @ @ ##每分钟
@/2 @ @ @ @ ##每两分钟
@/2 09-17 @ @ @ ##早7到晚5 每两分钟
@/2 09-17 3,5 1 5 ##1月的3号和5号或星期5 每两分钟

注:@代表*

存放目录:/var/spool/cron/
/用户名称
crontab 命令
-e ##设定
-l ##列出任务
-r ##删除任务
-u ##指定用户
注:只有超级用户可以在发起时,指定用户。

用户黑名单目录:/etc/cron.deny
用户白名单目录:/etc/cron.allow
注:超级用户不受限制
白名单存在时,默认就不读取黑名单

在这里插入图片描述

在这里插入图片描述
2.系统级的crontab
目录:/etc/cron.d/
root用户进行设定
crontab -l (无法查看系统级的crontab)

演示:确保实验环境的纯净
关闭设定的白名单和和黑名单

在这里插入图片描述
临时文件的清理

systemd-tmpfiles
在这里插入图片描述
临时文件在设定的生命周期结束之后才可以被删除
在这里插入图片描述
/lib/tmpfiles.d/westos.conf
d /mnt/westos 1777 root root 5s
/usr/lib 和 /lib 是一个用户
在这里插入图片描述
删除的方式:删除方式是删除临时文件的绝对路径

猜你喜欢

转载自blog.csdn.net/Antonhu/article/details/113413140