延时任务和临时文件清理

延时任务:临时的,不重复的。当延时任务有输出时,输出会以邮件的形式发送给任务发起人。邮件用mail去查看。

一 ,at命令

使用方法

at 时间

任务

ctrl+d:退出


  at -l   查看任务列表


  at -c 1  查看任务详情


  atrm 2   取消任务


at 命令的黑白明单

/etc/at.deny   :用户黑名单 加入用户黑名单的用户不能执行at命令


/etc/at.allow  :用户白名单,默认系统中是不存在这个文件的。一但被建立出来则黑名单失效(除了超户外的所有用户都被加入黑名单) 想要允许那个用户可以使用at命令加入白名单即可


二,crontab命令
1,crontab 建立永久的定时任务--当任务执行时主机如果关机,在开机时会执行
cron.server服务默认是开机自启的

systemctl status crond.service :查看crontab状态

2,编辑定时任务分为三种:

第一直接使用命令crontab -e,第二种是编辑配置文件/var/spool/cron/用户,这重方式是针对用户级别

第三种是编辑/etc/cron.d/文件名,这种是针对系统级别的

第一种:crontab -e:编辑延时任务

分钟   小时   天  月  周 任务


“/” 表示每隔多长时间执行一次 ,1-3 天 执行    1,3 第一天和第三天执行。天和周之间是互相不影响的

crontab -u 用户 -e ;在指定的用户下编辑延时任务


crontab -l 查看延时任务


crontab -u 用户 -l :在指定的用户下查看延时任务


crontab -r 删除延时任务


crontab -u 用户 -r :在指定的用户下删除延时任务

第二种:直接以配置文件的方式编写定时任务,针对的是单个用户

vim /var/spool/cron/用户


cron 用户的黑名单,和at的黑白名单一样

/etc/cron.deny   :用户黑名单 加入用户黑名单的用户不能执行cron命令

/etc/cron.allow  :用户白名单,默认系统中是不存在这个文件的。一但被建立出来则黑名单失效(除了超户外的所有用户都被加入黑名单),想要允许那个用户可以使用cron命令加入白名单即可。

第三种:系统级别的定时任务

vim /etc/cron.d/文件名 :是自定义多长时间执行一次的动作,在指定动作时要加入用户

编写这个文件格式

分 时 天 月 周   用户名      执行的动作


vim /etc/cron.monthly/文件名:每月执行的动作

vim /etc/cron.daily/文件名:   每天执行的动作

vim /etc/cron.hourly/文件名:   每小时执行一次

vim /etc/cron.weekly/文件名:   每周执行一次

执行时crontab -l 不能查看vim /etc/cron.d/ 的延时任务

用户级别的延时命令: /var/spool/cron/用户  编写这个文件时不用将用户加进去

非交互式编写临时文件:echo “* * * * * student date” >> /etc/cron.d/westos   :非交互式编辑定时文件

三,清理临时文件

查找临时文件

先查找文件在哪

再查找文件属于那个软件包

查询软件包生成的文件


然后在/usr/lib/tmpfiles.d/westos.conf中编写所要执行的动作

d  要清理的目录名   权限(1777)  拥有者  所在组    时间(多长时间后清理)sys    


systemd-tmpfiles --create /usr/lib/tmpfiles.d/*  去读取/usr/lib/tmpfiles.d/所有文件 建立要清理的文件



systmpfiles --clean /usr/lib/tmpfiles.d/*  执行要清理的动作





阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页