Linux中的定时和延时

Hello,大家好,今天我们要来学习的是linux中的定时和延时问题,因为在运维的过程中,我们无法时时刻刻都盯着电脑观察,所以就需要用定时和延时技术使我们的工作更加高效。
写在前面:定时任务是永久的,延时任务是暂时的!
一:延时技术
ctrl+D:任务发起
at 时间:任务输入
Linux中的定时和延时
Linux中的定时和延时
atrm :命令撤销
Linux中的定时和延时
Linux中的定时和延时
at -l/atq :当任务结束后,不会再出现内容
Linux中的定时和延时
at默认有输出的命令才会有邮件
at
-m:没有输出也会有邮件,但是邮件为空(让无输出的任务产生邮件)
一般来说,执行的命令有输出就会有文件产生:
Linux中的定时和延时
无输出就没有文件产生:
Linux中的定时和延时
m参数可以无输出命令产生任务:
Linux中的定时和延时
-c 任务id:表示查看文件的执行内容
Linux中的定时和延时
-f 文件:不需要交互,直接发起,后面指定执行文件
Linux中的定时和延时
-r 任务id:删除此id的任务
-l:列出延时任务id
Linux中的定时和延时
-M:让有输出的任务不产生邮件
Linux中的定时和延时
at中的黑白名单
黑名单:
Linux中的定时和延时
写入student用户:
Linux中的定时和延时
白名单:
Linux中的定时和延时
写入student:
Linux中的定时和延时
注意:at中默认存在黑名单,黑名单中的用户无法执行at命令,白名单可以自己创建,但白名单一旦创建,黑名单将失效。白名单出现后,系统中除了白名单中的用户和root用户,其余用户均不能使用at权限。
二:定时技术(写入程序的时间和事件是永久保存的)
crontab
-e ########编辑
-l ########列出当前用户的任务
Linux中的定时和延时
-r ########删除
Linux中的定时和延时
-c ########查看任务信息
-i ######## 删除询问
任务都记录在/var/spool/corn/* ,如果删除,即位删除掉任务
会把邮件都发送给执行用户

corn设定方式
方法1:crontab -e -u 用户名称(可以不写,默认用当前用户发起)
* ######每隔1分钟,以此类推
Linux中的定时和延时
Linux中的定时和延时
corntab的黑白名单
默认只存在黑名单,当白名单被建立,黑名单将失效
黑名单:/etc/cron.deny/加入不能执行的用户
Linux中的定时和延时
建立白名单:touch /etc/cron.allow
白名单:/etc/cron.allow/除root用户和名单中的用户,其他用户不能执行crontab命令(和at类似)
Linux中的定时和延时
cron有两个配置文件
/var/spool/cron/* /etc/cron.d/可以指定不同用户,用户组
非交互录入方式:(1)脚本(2)多行录入
3.文件方式定义
vim /var/spool/cron/用户名称 以 某个 用户身份执行cron,文件名必须和用户名相同
分 时 天 月 周 动作
vim /etc/cron.d/文件
分 时 天 月 周 用户 动作
响应顺序和系统有关。
anacron:监控crontab(在开机时)
systemd-tmpfiles –clean 管理临时文件
/usr/lib/tmpfiles.d/westos.conf 配置临时文件保存规则
三:临时文件的管理
(1)创建临时文件管理配置文件 路经: systemd-tmpfiles –creat /usr/lib/tmpfiles.d/*目录名
(2)建立目标目录下的测试文件
(3)监视 脚本中目标目录(递归查看)
(4)systemd-tmpfiles –clean /usr/lib/tmpfiles.d/*