Linux系统下的延时及定时任务
#####################
####延时及定时任务####
#####################
##1.系统延时任务
at命令发起的延时任务都时一次性的
at + time
at 11:11
at> rm -fr /mnt/* ##延迟动作
at> <EOT> ##ctrl+d表示发起动作
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.系统定时任务
#定时任务时永久的
crontab时间表示方式
* * * * *
*/2 09-17 3,5 1 5 # 3月和5月每周周五及3月1日和5月1日的早9点至晚5点
#发起方式一
crontab -u username -e #表示设置一个定时任务,以username的身份运行
crontab -u username -r #表示查看设置的定时任务
crontab -u username -l #表示删除设置的定时任务
例如:
crontab -u root -e
##表示每分钟删除一次/mnt 里的文件
#文件方式设定定时任务
#非交互式定时任务的设定
echo "* * * * * root -rm -fr /mnt/*" >> /etc/cron.d/file
##crontab 命令的执行权力设定
/etc/cron.deny ##用户黑名单,在此名单中出现的用户不能执行crontab命令
/etc/cron.allow ##用户白名单,名单默认不存在,但名单一旦出现,黑名单失效
注意:只有在名单中的用户可以,并且/etc/at.deny失效
这两个名单都不会影响/etc/cron.d/目录中定时任务的发起及执行
##3.系统中临时文件的管理方式
cd /usr/lib/tmpfiles.d/ls
vim westos.conf(d /mnt/westos 777 root root 8s)
systemd-tmpfiles --create /usr/lib/tmpfiles.d/* ##执行临时文件配置
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/* ##清理临时文件