系统延时及定时任务

1.系统延时任务
at命令发起的延时任务都时一次性的

at + time
[root@maillinux ~]# at 3:07
at> touch file                                   ##延迟动作     
at>                                       ##ctrl+d表示发起动作
job 3 at Tue Jan 23 03:07:00 2018
at -l | atq         #查看当前任务
atrm  | at -d           #取消指定任务
at -c               #查看任务内容
at now+1min         #延迟一分钟
at -f file          #延迟执行文件中的内容
at -m               #延迟命令没有输出时仍然发送邮件给执行者
at -M               #延迟命令有输出时但不发送邮件给执行者

at 命令的执行权力设定

/etc/at.deny        ##用户黑名单,在此名单中出现的用户不能执行at命令
/etc/at.allow       ##用户白名单,名单默认不存在,但名单一旦出现,黑名单失效
            ##系统所有用户默认不能执行at,只有在名单中出现的用户可以使用at命令

2.定时任务
定时任务是永久的,定时任务程序crond,在系统中每分钟做任务扫描.
发起方式1

crontab -u username  -e     ## 编辑定期任务
crontab -u username  -l     ##显示定期任务
crontab -u username  -r     ##删除定期任务

crontab格式
分钟 小时 天 月 周
分钟/数字 ##每隔几分钟,以此类推,小时,天,月,周都适用
示例:
系统延时及定时任务_第1张图片

发起方式2

vim /etc/cron.d/filename
分钟 小时 天 月 周     用户  动作
* * * * * root  rm -fr /mnt/*       #超级用户每分钟清理一次/mnt

crontab 命令的执行权力设定

/etc/cron.deny      ##用户黑名单,在此名单中出现的用户不能执行crontab命令
/etc/cron.allow     ##用户白名单,名单默认不存在,但名单一旦出现,黑名单失效

系统所有用户默认不能执行crontab,只有在名单中出现的用户可以使用

系统临时文件的管理
/usr/lib/tmpfiles.d/*.conf ##系统中临时文件的配置
vim /usr/lib/tmpfiles.d/xxx.conf
类型 名称 权限 所有人 所有组 存在时间(s m d)
d /mnt/westos 777 root root 10s

systemd-tmpfiles --create /usr/lib/tmpfiles.d/* ##执行临时文件配置
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*  ##清理临时文件