定时任务、延时任务和临时文件的了解

一、延时任务
cron是一个linux下的定时执行工具(相当于windows下的scheduled task),可以在无需人工干预的情况下定时地运行任务task。

cron服务提供crontab命令来设定cron服务的。

1.延时任务的设置

在做实验的时候我们打开两台终端,一台做监控观察,一台输入命令

 watch -n 1 ls  -R   /mnt/     为监控命令 这条命令会每秒查看一次/mnt

我们用到的延时命令为at

我们先做一些简单的实验 ,在一定的时间做一些事情。

输入命令at   21:51

at>  touch  /mnt/file{1..10}

at><EOT>       CTRL+D   退出保存

at命令的用法

at   [参数]   任务号  (任务号为执行at命令时显示最后一行job 后的数字)

at     -l                              查看任务列表

at     -c     任务号              查看任务内容
at     -r     任务号               取消任务执行

当任务有输出的时候,输出会以邮件的形式发送给at任务的发起者

mail   -u   root            查看超级用户邮件

在&    后面输入数字 1 时, 表示查看第一封邮件

         后面输入  q  时 ,表示退出

>   /var/spool/mail/root              表示清空邮件

2.at任务的黑白名单

/etc/at.deny           系统中的黑名单,在系统中默认存在,在此文件中出现的用户不能执行at命令

如果打开vim / etc/at.deny     在其中写入普通用户的用户名,那么该用户将不能使用at命令

/etc/at.allow           白名单   系统中默认不存在的,需要自己建立,当此文件出现后,黑名单etc/at.deny自动失效(除了root用户)。

                                            并且所有普通用户都不能执行at命令,只有在白名单/etc/at.allow出现的普通用户才能执行at命令。

注意:不管黑白名单是否出现root用户都可执行at命令

二、系统的定时任务

在做实验前,要先保证crond服务处于active状态

    1.定时任务的临时设定

在定时任务我们用到的是crontab命令  crontab表示时间的方式

crontab -e      编辑当前用户的定时任务

crontab -r       取消当前用户的所有定时任务

crontab -l       查看当前用户的所有定时任务

crontab -u username -e             编辑username的定时任务

crontab  -u username -r            取消username的所有定时任务

crontab -u username -l            查看username的所有定时任务

这里的* * * * *  表示的是分钟、小时、日期、月份、星期

除了数字还有几个特殊的符号就是"*"、"/"和"-"、",",*代表所有的取值范围内的数字,"/"代表每的意思,"*/5"表示每5个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字

例子:

0 */2 * * *     表示每两个小时

0 23-7/2,8 * * *    晚上11点到早上8点之间每两个小时,早上八点

0 4 1 jan *        一月一号的4点

45 4 1,10,22 * *     表示每月1、10、22日的4 : 45

 在定时任务里也有黑白名单的存在,定时任务的黑白名单和延时任务的黑白名单属性相同,作用相同

    2. 定时任务的永久设定

 /var/spool/cron/username        编辑该文件,永久定时任务,实质所有定时任务存储在该文件中

ls  /var/spool/cron          查看当前定时任务的发起人

若删除/var/spool/cron/username,则删除当前username的定时任务

cron.d/    用户自定义文件       cron.daily/    系统每天执行一次 

cron.hourly/     系统每小时执行一次  cron.monthly/    系统每月执行一次

cron.weekly/      系统每周执行一次

三、临时文件的管理

/usr/lib/tmpfiles.d/xxx.conf       系统临时文件的配置

建立一个文件为westos.conf

          d      /mnt/westos     1777         root        root        5s

  文件类型   文件名称    文件权限  所有人  所有组   文件存在时间

systemd-tmpfiles --create /usr/lib/tmpfiles.d/*    执行建立的配置文件,监控的westos.conf

systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*      清除临时文件

创建的文件在存在的时间 5s 内不能被删除,只有存在  5s  以上的时间才能被清除。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值