一、系统的延时任务
- at 14:54设定任务执行时间,用ctrl+D发起任务
at -l :查看任务列表
at -c 任务号 :查看任务内容
监控/mnt 目录
at -r 任务号 :取消任务执行
延时1分钟
二、at任务的黑白名单
- /etc/at.deny :系统中默认存在,在此文件中出现的用户不能执行at
可以看到lee不能执行at命令,但westo用户可以
/etc/at.allow :系统中默认不存在,当文件出现,普通用户不能执行at。
只有在名单中的用户可以,并且/etc/at.deny失效
一旦/etc/at.allow文件出现,westos和lee都不能执行at命令
查看at.deny
注意:当任务有输出时,输出会以邮件的形式发送给at任务的发起者。
安装postfix 和 mailx,mailx是个客户端工具,postfix是邮件服务器软件,用来传送邮件的。
开启postfix邮件服务
mail -u root :查看超级用户邮件
1 :查看第一封邮件
q :退出
清空邮件
三、系统定时任务
- 系统控制crontab的服务,crond.service :当程序开启时定时任务生效
- -u user:用来设定某个用户的crontab服务;
-e:编辑用户的crontab文件内容;
-l:显示用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。
以下内容表示:每分钟在/mnt目录创建一个westosfile1文件
/var/spool/cron/username :任务保存文件
可以看到文件已被创建
-r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。
以下内容分别表示:每两分钟、早上9点和晚上5点 每两分钟、早上9点–晚上5点 每两分钟、每月的1号和5号 早上9点–晚上5点 每两分钟、5月的1号和5号 早上9点–晚上5点 每两分钟、5月的每周六和1号和5号 早上9点–晚上5点 每两分钟
crontab的黑白名单
/etc/cron.deny :系统中默认存在,在此文件中出现的用户不能执行crontab
lee不能执行crontab
/etc/cron.allow :系统中默认不存在,当文件出现,普通用户不能执行。只有在名单中的用户可以,并且/etc/at.deny失效。
可以看到,lee和westos都不能执行crontab
系统级别的cron(文件方式设定定时任务),需要指定用户。deny和allow两个名单都不会影响/etc/cron.d/目录中定时任务的发起及执行
设定每分钟清理/mnt目录的内容
在/mnt中创建5个文件
整点过1秒后文件被清理
查看发送给root的邮件
为了避免crontab产生的输出发送邮件给用户,有两种方式进行设定
编辑以下文件进行设定,重启crond服务后生效
四、系统中临时文件的管理方式
- 系统临时文件存放目录:/usr/lib/tmpfiles.d/
清空临时文件
在临时文件目录下编写westos.conf文件,此时/mnt/westos目录中的内容,存放8s之后就可以删除
识别westos.conf文件
westos目录创建成功
8s之后即可删除