Linux运维学习--定时任务及延迟任务

左手的ㄟ右手 2023-06-10 05:25 27阅读 0赞

一、系统延迟任务

1.at 命令

at 命令可以指定某一任务在将来的特定时间运行

2.命令用法

  1. at 18:09
  2. at>定时任务命令
  3. at -l #查看定时任务
  4. at -c 任务号 #查看任务详细信息
  5. at -r 任务号 #取消定时任务
  6. at now+1min
  7. at>延时任务命令 #一分钟后执行任务

3.at命令黑白名单

  • /etc/at.deny 黑名单,系统中默认存在,在此文件中出现的用户不能执行at命令
  • /etc/at.allow 白名单,系统中默认不存在,只有在此名单中的用户和超级用户才可以执行at命令,该文件存在时黑名单失效

黑名单示例:
将leo用户加入黑名单:
在这里插入图片描述
切换到leo用户发现没有权限执行at命令;
在这里插入图片描述
另一用户student可以执行at命令:
在这里插入图片描述
白名单示例:

将用户leo加入白名单中:
在这里插入图片描述
leo用户可以使用at命令;
在这里插入图片描述
另外一个用户不能使用at命令:
在这里插入图片描述

二、用户级系统定时任务

1.crontab命令

使用crontab可以在指定的时间执行一个shell脚本或者一系列Linux命令

  1. man 5 crontab #可以查看这个命令的用法

2.命令用法

  1. crontab -e #修改 crontab 文件. 如果文件不存在会自动创建。
  2. crontab -l #显示 crontab 文件。
  3. crontab -r #删除 crontab 文件。
  4. crontab -ir #删除 crontab 文件前提醒用户
  5. crontab -e -u root #为root用户创建计划任务
  6. crontab -l -u root #列出root用户的计划任务
  7. crontab -r -u root #删除root用户的计划任务

crontab时间表示方式:
在这里插入图片描述
示例:
在这里插入图片描述
进入编辑界面:
在这里插入图片描述
查看任务:
在这里插入图片描述
3.cron 权限设定

在系统中默认所有用户可以设定 cron
用户黑名单:/etc/cron.deny
用户白名单:/etc/cron.allow

cron黑白名单与at命令黑白名单使用类似

三、系统中的临时文件

系统中服务在正常运行时会产生临时文件,这些临时文件存放在系统中 /usr/lib/tmpfiles.d/目录下

1.创建临时文件

  1. systemd-tmpfiles --create /usr/lib/tmpfiles.d/test.conf

2.清理临时文件

  1. systemd-tmpfiles --clean /usr/lib/tmpfiles.d/test.conf

注意:临时文件生命周期到了之后如果不执行清理命令临时文件并不会被自动清理

3.实验
在临时文件目录中新建.conf文件:vim test.conf
.conf文件中写入以下内容:

  1. d /mnt/testfile 1777 root root 10s
  2. # [文件类型] [文件名称] [文件权限] [所有人] [所有组][生命周期]

在这里插入图片描述
watch命令监控/mnt/目录
执行创建临时文件命令:
在这里插入图片描述
/mnt/testfile/目录下创建文件:
在这里插入图片描述
10秒后执行清理命令发现文件被清理:
在这里插入图片描述
在此建立文件并立即执行清理命令发现文件文件没有被清理:
在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,27人围观)

还没有评论,来说两句吧...

相关阅读