RedHat Linux 8 中系统定时任务及延迟任务

延迟任务

  1. 延迟任务的发起
    命令 :at 时间 ,发起定时任务,发起后可以写入需要的命令
    在这里插入图片描述
    定时在22:58发起任务touch /mnt/test{1…5},然后按键 “Ctrl+d” 开启任务
    在这里插入图片描述
    watch监控文件/mnt,在22:58时就会自动执行任务
    命令at 还可以加参数
参数说明
-l查看任务队列,任务有任务号
-c 任务号查看任务内容
-r 任务号取消任务
  • -l 查看任务列队
    在这里插入图片描述
  • -c 查看任务内容
    在这里插入图片描述
    在展示的内容最后展示了任务命令
    在这里插入图片描述
  • -r 取消任务
    在这里插入图片描述
  1. 当延迟任务有输出,输出会以邮件形式发送到任务发起者邮箱中
    查看邮件查看命令是否已安装,如果没有,安装程序,在rhel8中邮箱命令是mailx
    在这里插入图片描述
    查看邮件服务程序是否安装启用在rhel8中邮箱程序时postfix
    在这里插入图片描述
    完成安装后,开启postfix程序
    在这里插入图片描述
    命令:mail -u 用户名 ,查看指定用户的邮件
    在这里插入图片描述
    命令: mail 用户名 ,给指定用户发邮件
    在这里插入图片描述
    mail 发用邮件命令,发用结束输入“.” 来表示结束,然后就可以查看到
    然后我们测试at命令,写入temedatectl定时命名,可以看到到时间并没有显示输出到shell界面
    在这里插入图片描述
    但是在mail里看到是有输出的内容邮件,输入邮件号查看邮件内容
    在这里插入图片描述
    可以看到邮件内容就是timedatectl命令的输出内容,退出输入 “q” 。

  2. at命令的控制
    配置文件:/etc/at.deny ,控制黑名单,此名单中的人不能执行at命令
    在这里插入图片描述
    将redhat用户写入配置文件里,切换到redhat用户使用at命令被拒绝
    配置文件:/etc/at.allow ,控制用户白名单,此文件默认不存在需要新建,当此文件存在/etc/at.deny不生效,当此文件存在系统普通用户默认不能执行at,只有在名单中的用户可以执行
    在这里插入图片描述


定时任务

定时任务服务:crond.service

  1. crond 服务参数用法
参数说明
crontab -u root -e设定
crontab -u root -l查看
crontab -u root -r删除

定时任务存储路径:/var/spool/cron/用户名,不同用户设定的定时任务存放在,和用户名相同的文件里

首先我们可以用man 5 crontab 去查看设定的用法
在这里插入图片描述
在这里插入图片描述
这里展示了时间的设定和设定的形式
时间表示顺序是:分钟、小时、日、月、星期,例如:2月23号星期天10:20 == 20 10 23 2 7 。
设定形式就是:时间 任务/脚本 。
在这里插入图片描述
这里就展示了命令的用法

  1. 时间设定的特殊用法
时间设定说明
08-17 * * * *每天每小时08分-17分
08-17 * * * 3,5每周3和周五每小时08分-17分
08-17/2 * * * 3,5每周3和周五每小时08分-17分时间段每隔2分钟
08-17/2 10 * * 3,5每周3和周五10点08分-17分时间段每4隔2分钟
08-17/2 10 5 * 3,5每周3和周五及每月5号10点08分-17分时间段每隔2分钟
08-17/2 10 5 3 3,53月每周3和周五及3月5号10点08分-17分时间段每隔2分钟

“ * ” 表示不设定具体数值,重复执行
“ 08-17 ”,表示某个时间段
“ 3,5 ”,表示两个时间点

  1. 配置文件方式设定
    配置文件的路径:/etc/cron.d
    在配置文件里的写入文件属于系统级别cron,只有超级用户可操作,和上面的任务写法略有不同
    系统级别的cron文件编辑:可以自己去编写一个文件,如 vim /etc/cron.d/test ,文件名自定义,编辑内容如下
    在这里插入图片描述
    每分钟都在 /mnnt/里建立文件file1
    在/etc/下还存在一些特定的cron目录,如下
    在这里插入图片描述
    /etc/cron.daily/ ,每天执行任务
    /etc/cron.hourly/ ,每小时执行任务
    /etc/cron.monthly/ ,每月执行任务
    /etc/cron.weekly/ ,每周执行任务
    超级用户在设定时可以把需要的执行的任务放入相应的目录下去执行,在这些目录里编写的文件内容就直接写入执行的命令或需要运行的脚本即可,不需要再写时间和用户。
  2. 用户级别crond控制设定
    编辑vim /etc/cron.deny ,控制cron用户名黑名单,写入用户名,禁止用户去使用定时任务功能;
    编辑vim /etc/cron.allow ,控制用户白名单,此文件默认不存在需要新建,当此文件存在/etc/at.deny不生效,当此文件存在系统普通用户默认不能执行at,只有在名单中的用户可以执行;
    这里两个文件用法就类似于 at 命令的用户控制了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Howei__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值