系统延时任务
延时任务:工作时间设定脚本,可以在不工作的时候自动执行,提高了效率
at 23:00 ##设定任务执行时间
at> rm -fr * ##任务动作
at> <EOT> <<用ctrl+D 发起任务
at now+1min ##延时一分钟
at> rm -fr *
at> <EOT>
at -l ##查看任务列表
at -c 任务号 ##查看任务内容
at -r 任务号 ##删除任务,取消执行任务
当任务有输出时候,例如echo,date,ls,cat这种命令产生的输出,输出会以邮件的方式发给at任务的发起者
mail -u root ##查看超级用户邮件
##查看第一封邮件
q ##退出
>var/spool/mail/root ##清空超级用户邮件
用户黑白名单:
黑名单:at黑名单的文件/etc/at.deny
在文件中写入用户的名字==(超级用户写入)==,被写入的用户不能使用at命
白名单:当/etc/下有at.allow文件存在的时候,(默认不存在,需要自己创建),at黑名单不会被应用,首先应用的用户白名单,只有在/etc/at.allow文件中写入的用户名,才可以执行at命令。此时黑名单失效。
我vim /etc/at.allow 然后再文件中写入lee
系统定时任务:
crontab 时间表示方式
1.* * * * * ##每分钟
2../2 * * * * ##每两分钟
3./2 09-17 * * * ##早9-晚5每两分钟
4./2 /2 * * * ##每隔两小时每两分钟
5./2 09-17 3,5 1 5 ##每隔两分钟,早9-晚5,周三,周五,1月,每周五
6./2 09-17 * * 5 ##每隔两分钟,早9-晚5,每周5
系统控制crontab服务
systemctl start crond.service 开启crond服务之后才可以使用crontab命令。
crontab命令用法
crontab -e -u 指定某用户的定时任务
通过/var/spool/cron/ ls 可以查看到实施任务的用户,vim 用户,可以查看到任务内容
这个服务是systrmctl restart crond.service(status查看状态,stop关闭)
文件方式设定定时任务
(1)vim /etc/cron.d/file(文件名) ##file名称任意
不同文件名下,设置的意思不同,
/etc/cron.d/ 这个是每分钟
/etc/cron.deny/
/etc/cron.daily/
/etc/cron.hourly/
/etc/cron.monthly/
(2)crontab的黑白名单
vim /etc/cron.deny 黑名单:##系统中默认存在,在此文件中出现的用户不能执行crontab(黑名单)
vim /etc/cron.allow 白名单: ##系统中默认不存在,当文件出现,普通用户不能执行crontab,只有在名单中的用户可以,并且/etc/at.deny失效
这两个名单都不会影响/etc/cron.d/目录中定时任务的发起及执行
系统中临时文件的管理方式
(1)cd /usr/lib/tmpfiles.d/ 在这个目录下面创建临时文件
##vim westos.conf
(文件所写内容)d /mnt/westos 777 root root 5s ##会自动建立/mnt/westos
#touch /mnt/westos/file
systemd-tmpfiles --create /usr/lib/tmpfiles.d/* ##读取里面所有文件并按照其规则去建立
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/* ##清理临时文件,目录清理不了(所设定的时间到了之后才会清理)
我们可以动态监控,watch -n 1 ls -lR /mnt/westos 监控这个目录以及子目录子文件