1.#####系统延时任务及定时任务#######
##1.系统延时任务##
[root@localhost] at 22:22 ##设定任务执行时间
at> rm -fr /mnt/* ##任务动作
at> <EOF> << CTRL +D ##用ctrl+D 发起任务
at now+1min #延时一分钟
echo hello
crtl+D 退出
如图:at -l ##查看任务列表
at -c 任务号 ##查看任务内容
at -r 任务号 ##取消任务执行
注意:
当任务有输出时,输出会以邮件的形式发送给at任务的发起者
mail -u root ##查看超级用户邮件
l ##查看第一封邮件
q ##退出
> /var/spool/mail/root ##清空邮件
##2.at任务的黑白名单###
/etc/at.deny ##系统中默认存在,在此文件中出现的用户不能执行at命令
/etc/at.allow ##系统中默认不存在,需要建立,touch /etc/at.allow 不在此文件中出现的用户都不能执行at命令
##当at.allow出现后,系统默认不读取at.deny的内容
如下图所示:
分别再/etc/at.deny 和 /etc/at.allow 中设定“11”用户 首先11用户不能使用命令,而后白名单出现,11可以使用该命令。
##3.系统的定时任务
1.crontab 时间表示方式
* * * * * ##每分钟
*/2 * * * ##每隔两分钟
*/2 09-17 * * * ##早9晚5每两分钟
*/2 09-17 3,5 1 5 ##3月和5月的第一天和每周周五
执行命令 crontab 然后编辑文件内容
上如下图意思为:每三分钟建立file1 file2 file3 file4 file5
执行命令前后结果如下
2.系统控制crontab的服务
crond.service ##当程序开启时定时任务生效
3.crontab
crontab -e -u 编辑
crontab -l -u 后跟用户名 查看
crontab -r -u 删除
4.文件方式设定定时任务
vim /etc/cron.d/file
* * * * * username action
* * * * * root rm -fr /mnt/*
5.crontab的黑白名单
/etc/cron.deny ##系统中默认存在,在此文件中出现的用户不能执行crontab
/etc/cron.allow ##系统默认不存在,当文件出现,普通用户不能执行crontab
##只有在文件中的用户可以,并且/etc/at.deny失效
者两个名单都不会影响/etc/cron.d/目录中定时任务的发起及执行。
此命令与at命令相似
#####4.系统中临时文件的管理方式####
cd /usr/lib/tmpfiles.d/
vim westos.conf
d /mnt/westos 777 root root 5s
systemd-tmpfiles --create /usr/lib/tmpfiles.d/*
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*
在shell 里建立一个file1
touch /mnt/westos/ file1
ls /mnt/westos/
再执行systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*
ls ./mnt/westos/
五秒后 file1 就不见了