Linux下的定时任务
1.延迟任务(一次性的)
1.1 延迟任务的发起
执行时间:at 12:12
执行内容: rm -fr /mnt/*
任务发起:ctrl+d
at -l 查看任务队列
at -c 任务号 查看任务内容
at -r 任务号 取消任务
1.2 at命令的控制
1 黑名单:
在vim /etc/at.deny添加hehe
[[email protected] ~]# cat /etc/at.deny
hehe
2 白名单:
/etc/at.allow :
此文件默认不存在
当此文件存在 /etc/at.deny不生效
当此文件存在系统普通用户默认不能执行at,只有在名单中的人可以
1.3 延时任务输出时发送邮件
当延时任务有输出,输出会以邮件形式发送到任务发起者邮箱中。
[[email protected] ~]# dnf install mailx-12.5-29.el8.x86_64
[[email protected] ~]# dnf install postfix
[[email protected] ~]# systemctl start postfix.service
[[email protected] ~]# systemctl enable postfix.service
查看root用户的邮件:mail -u root
root用户没有邮件:No mail for root
清空root邮件:>/var/mail/root
q:退出
2.定时任务(可以重复执行)
crond :定时任务服务
2.1 设定方式
1 命令设定方式:
crond
crontab -u root -e 设定
crontab -u root -l 查看
crontab -u root -r 删除
var/spoll/cron/root 任务存储位置
顺序:分钟、小时、天、月、周
2 配置文件方式设定:
系统级别cron,只有超级用户可操作
系统级别cron设定文件存放路径:
/etc/cron.d
cron设定文件:
vim /etc/cron.d/westos
执行方式:
时间 用户 动作
-
-
-
-
- root rm -fr /mnt/*
-
-
-
自定义的脚本:
/etc/cron.daily/ 每天任务
/etc/cron.hourly/ 每小时任务
/etc/cron.monthly/ 每月任务
/etc/cron.weekly/ 每周执行任务
比如每小时
2.2 用户级别crond控制设定
vim /etc/cron.deny 用户的黑名单
vim /etc/cron.allow 白名单