延迟,定时及临时任务的管理
#######################1.系统延时任务############################################
at
监控watch -n 1 ls /mnt/ -l
at now+2min ##二分钟后执行任务
at 时间
at>touch /mnt/file{1..10} ##需要执行的命令
at> 按ctrl+d
at -l #查看当前内容具体信息
at -c 任务编号 #查看任务内容
at -r 任务编号 #删除任务内容
例子:[[email protected] ~]# at 11:11
at> rm -fr /mnt/* ##延迟动作
at> <EOT> ##ctrl+d表示发起动作
job 6 at Tue Aug 1 11:11:00 2017
/etc/at.deny ##用户黑名单,在此名单中出现的用户不能执行at命令
/etc/at.allow ##用户白名单,名单默认不存在,但名单一旦出现,黑名单失效
系统所有用户默认不能执行at,只有在名单中出现的用户可以使用at命令
############################2.系统定时任务################################
crontab
#定时任务永久的
crontab -u username -e ##添加任务
crontab -u username -r ##删除任务
crontab -u username -l ##查看任务
* * * * *
分钟 小时 天 月 周
例:crontab -u root -e
* * * * * /bin/rm -fr /mnt/* ##每分钟超级用户删除mnt下的所有文件
2 * * * * ##每两分钟
* * */2 * * ##每隔两天
* 08-17/2 * * * ##八点到五点每隔两个小时
* * 01,15 * 2 ##每个月的一号和十五号和星期二
* * * 3 * ##三月开始执行
/etc/cron.deny ##用户黑名单,在此名单中出现的用户不能执行crontab命令
/etc/cron.allow ##用户白名单,名单默认不存在,但名单一旦出现,黑名单失效
系统所有用户默认不能执行crontab,只有在名单中出现的用户可以使用
测试:[[email protected] ~]# vim /etc/cron.deny
[[email protected] ~]# cat /etc/cron.deny
linux
[[email protected] ~]# su - linux
Last login: Sat Apr 21 22:21:01 EDT 2018 on pts/2
[[email protected] ~]$ crontab -e
You (linux) are not allowed to use this program (crontab)
See crontab(1) for more information
vim /etc/cron.d/filename
分钟 小时 天 月 周 用户 动作
* * * * * root touch /mnt/file{1..10} #超级用户每分钟建立
cd /var/spool/cron/ ##用户级别
cd /var/cron.d/ ##系统级别
#####################3.临时文件的管理#########################################
系统中服务在正常运行时会产生临时文件
cd /usr/lib/tmpfiles.d/ 切换路径
/usr/lib/tmpfiles.d/*.conf ##系统中临时文件的配置
eg:
文件类型 文件名称 文件权限 文件所有人 文件所有组 文件存在时间
d /mnt/westos 1777 root root 5s
systemd-tmpfiles --create /usr/lib/tmpfiles.d/* ##执行临时文件配置
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/* ##清里临时文件
[[email protected] cron.d]# cd /usr/lib/tmpfiles.d
[[email protected] tmpfiles.d]# vim westos.conf
[[email protected] tmpfiles.d]# cat westos.conf
d /mnt/westos 1777 root root 5s
[[email protected] tmpfiles.d]# systemd-tmpfiles --create /usr/lib/tmpfiles.d/*
[[email protected] tmpfiles.d]# touch /mnt/westos/file
[[email protected] tmpfiles.d]# touch /mnt/westos/file1
[[email protected] tmpfiles.d]# systemd-tmpfiles --clean /usr/lib/tmpfiles.d/* ##执行建立超过5s的文件都会被删除