######系统延时任务及定时任务######
##1.系统延时任务##
[root@localhost ~]# at 23:37 ##设定任务执行时间
at> rm -fr /mnt/* ##任务动作
at> <EOT> << CTRL +D ##用ctrl+D发起任务
[root@localhost ~]# at now+1min ##延时1分钟
at> rm -fr /mnt/*
at> <EOT>
at -l ##查看任务列表
at -c 任务号 ##查看任务内容
at -r 任务号 ##取消任务执行
注意:
当任务有输出时,输出会以邮件的型是发送给at任务的发起者
mail -u root ##查看超级用户邮件
1 ##查看第一封邮件
q ##退出
/var/spool/mail/root ##清空邮件
###2.at任务的黑白名单###
/etc/at.deny ##系统中默认存在,在此文件中出现的用户不能执行at
/etc/at.allow ##系统中默认不存在,当文件出现,普通用户不能执行at
##只有在名单中的用户可以,并且/etc/at.deny失效
###3.系统定时任务###
1.crontab 时间表示方式
* * * * * ##每分钟
*/2 * * * * ##每两分钟
*/2 09-17 * * * ##早7-晚5每两分钟
*/2 */2 * * * ##每隔2小时每两分钟
*/2 09-17 * * 5 ##每周周五早9晚5
2.系统控制crontab的服务
crond.service ##当程序开启时定时任务生效
3.crontab
crontab -e -u 为root用户创建计划任务
crontab -l -u 列出root用户的计划任务
crontab -r -u 删除root用户的计划任务
4.文件方式设定定时任务
crontab -e -u root 为root用户创建定时任务
crontab -l -u 列出root用户的计划任务
vim
cat /var/spool/cron/root在这个文件里面可以看到定时任务
crontab -r -u 删除root用户的计划任务
4.文件方式设定定时任务
系统当中常见的任务在/etc/cron.d下面放着
cd /etc/cron.d
ls 查看系统的定时任务
每一个文件都可以用vim查看
在这个目录下我们可以直接写入定时文件 ,比如:vim westos
每次把所有的定时任务写在/mnt/下面,可以采用实时监控,也可以ls /mnt/查看有没有定时实现
(1) * * * * root run-parts /westos 定时任务多,将任务放在一个目录下,写脚本
vim test.sh
crontab -e -u root
(2) * * * * root rm -rf /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 8s (这个目录是没有的)
目录 目录名称 权限 所有人 所有组 生命周期 这个目录的属性
生命周期是目录下面的文件的生命周期,目录的作用是作用于文件
systemd-tmpfiles --create /usr/lib/tmpfiles.d/*创建(自动建立/mnt/westos/)
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*清空(清空/mnt/westos/这个目录下面的东西
)
只有当目录下的文件的生命周期到之后(周期到了也不会自动消失),clean才会清除它
但是rm -rf可以随时删除它,周期没到之前时不能clean的