1.系统延时任务
at 11:11 设定任务执行时间
at > rm -fr /mnt/* 任务动作
at > <EOT> <<Ctrl+D 用ctrl+D发起任务
at now+1min 延时1分钟
at > rm -fr /mnt/*
at > <EOT>
at -l 查看任务列表
at -c 任务号 查看任务内容
at -r 任务号 取消任务
2.at任务的黑白名单
/etc/at.deny #系统中默认存在,在此文件中出现的用户不能执行at(黑名单)
/etc/at.allow #系统中默认不存在,当文件出现所有普通用户不能执行at只有在名单上的用户可以,并且/etc/at.deny失效
监控 watch -n 1 ls -lr /mnt
3.系统定时任务
/var/spool/cron/用户 任务保存文件
1)*分钟*小时*天*月*周
* * * * * 每分钟
*/2 * * * * 每两分钟
*/2 09-17 * * * 早七-晚5每两分钟
*/2*/2 * * * 每隔两小时每两分钟
*/2 09-17 3,5 1 5 一月3,5号和每周五早七-晚5每两分钟
2)系统重置crontab 服务
systemctl start crond.service 当程序开启时定时任务生效
3)crontab
-u root -e 指定root用户编写定时文件
-l 查看定时任务
-r 删除定时任务
4.cron任务的黑白名单
/etc/cron.deny #系统中默认存在,在此文件中出现的用户不能执行cron(黑名单)
/etc/cron.allow #系统中默认不存在,当文件出现所有普通用户不能执行cron
只有在名单上的用户可以,并且/etc/cron.deny失效
这两个名单对超级用户没有影响
5.邮件功能
当at/cron有输出时 会发送到用户下的邮箱中
dnf install postfix mailx -y 软件仓库下载邮箱
systemctl enable --now postfix.service 启动邮箱服务
systemctl restart crond.service 重启cond服务
contab -e 写入定时任务
* * * * * date
mail 邮箱查看邮件
邮箱不接收
1)vim /etc/sysconfig/crond
CRONDAARGS=-m off
systemctl restart crond.service
mail
2)contab -e
MAILTO=''
* * * * * date
mail
3)contab -e
* * * * * /bin/date &> /devnull(直接放入垃圾桶)
mail
7.文件的删除保护
先编辑文件 :vim /lib/tmpfiles.d/westos.conf 编写d /mnt/westos 1777 root root 10s (保护时间为10s)
然后创建配置文件,这样上条命令才能生效: systemd-tmpfiles --create /lib/tmpfiles.d/westos.conf
然后在 创建文件touch /mnt/westos/westosfile1
如果10s不过的话,使用命令systemd-tmpfiles --clean /lib/tmpfiles.d/westos.conf无法删除/mnt/westos中的文件
在脚本vim /etc/cron.d/westos里编写 01 * * * * root systemd-tmpfiles --clean /lib/tmpfiles.d/*.conf
每分钟删除但保护时间没到的不会被删除(简单的系统优化)