RHCE--复习(一)之系统延迟任务及定时任务

系统延迟任务及定时任务

  #关闭图形命令(第二次开启的时候)
  [root@localhost ~]# systemctl set-default multi-user.target
  
  #windos系统级别类型  0-6个级别
  #查看级别类型
  [root@localhost ~]# runlevel 

一、延迟任务

  • 在系统中我们的维护工作大多数时在服务器行对闲置时进行

  • 我们需要用延迟任务来解决自动进行的一次性的维护

  • 延迟任务时一次性的,不会重复执行

  • 当延迟任务产生输出后,这些输出会以邮件的形式发送给延迟任务发起者

  • 在RHEL9中默认系统中的所有普通用户都可以发起延时任务

1.1延迟任务的发起

在系统中我们可以使用at命令来发起延迟任务 at命令执行是调用的是atd服务,即使系统最小化安装atd也会被安装到系统中at 任务信息存放在系统中/var/spool/at目录中at 任务的日志文件被存放到/var/log/cron中at 任务执行时如果遇到系统处于关闭状态,那么在开启时atd任务会检测未执行的任务并且立即执行 延迟任务发起方法如下:

环境搭建

#发起延迟任务
[root@rhce-fuxi ~]# at now+2min
warning: commands will be executed using /bin/sh
at> rm -fr /mnt/easylee/*  #输入延迟任务
at> <EOT>               # ctrl+d 启动延迟任务
job 1 at Wed Sep 11 21:39:00 2024
[root@rhce-fuxi ~]#

1.2 at命令参数

  • at 命令执行格式为 at 参数

  • -m 当任务完成之后,即使没有标准输出,将给用户发送邮件

  • -l atg的别名,可列出目前系统上面的所有该用户的at调度

  • -d atrm的别名,可以取消一个在at调度中的工作

  • -v 使用较明显的时间格式,列出qt调度中的任务列表

  • -c 可以列出后面接的该项工作的实际命令内容

  • -f 从文件中读取作作业

#安装邮件服务和邮件服务客户端
[root@rhce-fuxi ~]# dnf install postfix s-nail-14.9.22-6.el9.x86_64 -y
#启动
[root@rhce-fuxi ~]# systemctl enable --now postfix.service
#发送邮件和查看邮件

1.3 at 命令的时间表示方法

  • HH:MM 在今天的HH小时MM分钟执行,如果今天的这个时间点已经过了,则明天执行。

  • HH:MM YYYY-MM-DD 强制规定在某年某月的某一天的特殊时刻进行该工作

  • now+2 minutes 从现在开始几分钟minutes,hours, days, or weeks

1.4 at非交互方式执行

[root@rhce-fuxi mnt]# vim test.sh
[root@rhce-fuxi mnt]# sh test.sh
warning: commands will be executed using /bin/sh
job 6 at Wed Sep 11 22:12:00 2024
[root@rhce-fuxi mnt]# at -l
6       Wed Sep 11 22:12:00 2024 a root
[root@rhce-fuxi mnt]# at -c 6

1.5 延迟任务的黑白名单

超级用户可以执行at,普通用户默认情况可以执行

[root@rhce-fuxi mnt]# useradd user1
您在 /var/spool/mail/root 中有新邮件
[root@rhce-fuxi mnt]# useradd user2
[root@rhce-fuxi mnt]# su - user1
[user1@rhce-fuxi ~]# at now+1min
warning: commands will be executed using /bin/sh
at> <EOT>
job 7 at Wed Sep 11 22:14:00 2024
[user1@rhce-fuxi ~]#

缺乏安全性,解决方法如下,限制用户的执行

[user1@rhce-fuxi mnt]# man at.deny

#用户黑名单
[root@rhce-fuxi mnt]# vim /etc/at.deny
[root@rhce-fuxi mnt]# cat /etc/at.deny
user1
[root@rhce-fuxi mnt]#

#此时user1写不了
[user1@rhce-fuxi ~]$ at now+1min
You do not have permission to use at.
[user1@rhce-fuxi ~]$


#有白名单后 ,user2不能执行
[root@rhce-fuxi mnt]# touch /etc/at.allow
[root@rhce-fuxi mnt]# cat /etc/at.allow
[root@rhce-fuxi mnt]#

[user2@rhce-fuxi ~]$ at now+1min
You do not have permission to use at.
[user2@rhce-fuxi ~]$


#把user1写入白名单
[root@rhce-fuxi mnt]# vim /etc/at.allow
[root@rhce-fuxi mnt]# cat /etc/at.allow
user1
[root@rhce-fuxi mnt]# su - user1
[user1@rhce-fuxi ~]$ at now+1min
warning: commands will be executed using /bin/sh
at> <EOT>
job 10 at Wed Sep 11 22:43:00 2024
[user1@rhce-fuxi ~]$ exit
注销
[root@rhce-fuxi mnt]# su - user2
[user2@rhce-fuxi ~]$ at now+1min
You do not have permission to use at.
[user2@rhce-fuxi ~]$

二、定时任务

使用服务 crond.service

2.1.定时任务介绍

  • 和延迟任务类似,我们可以用crontab来解决自动进行的周期性的维护

  • 定时任务类似手机闹钟,会重复执行

  • 当定时任务产生输出后,这些输出会以邮件的形式发送给延迟任务发起者。

  • 在RHEL9中默认系统中的所有普通用户都可以发起定时任务

2.2定时任务的发起

  • 在系统中我们可以使用crontab命令来发起用户级定时

  • 任务在系统中/etc/cronfilename是系统级定时任务,只有root用户可以发起。

  • 定时任务执行是调用的是crond服务,即使系统最小化安装crond也会被安装到系统中

  • 定时任务信息存放在系统中/var/spool/cron目录中,存放文件和发起人名称一致

  • 定时任务的日志文件被存放到/var/log/cron中

  • 定时任务执行时如果遇到系统处于关闭状态,那么在开启时crond任务会检测未执行的任务并且立即执行

2.3发起用户级周期行任务

[root@rhce-fuxi ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@rhce-fuxi ~]# crontab -l
* * * * * rm -fr /mnt/test.sh
[root@rhce-fuxi ~]#
#  * * * * *   对应  分  时  天  月  周
#在创建后面也会删除
[root@rhce-fuxi ~]# touch /mnt/test.sh

2.4定时任务的时间表示

#查看时间表示
[root@rhce-fuxi ~]# man 5 crontab

  minute         0-59
  hour           0-23
  day of month   1-31
  month          1-12 (or names, see below)
  day of week    0-7 (0 or 7 is Sunday, or use names)


* * * * *    每分钟
*/2 * * * *  每两分钟
*/2 09,17 * * *  9点和下午5点每两分钟执行一次
*/2 09-17 * * *  9点 到下午5点每两分钟执行一次
*/2 09-17 10,15 * *  每月10号和每月15号早上9点到下午5点每两分钟执行一次
*/2 09-17 10,15 3 *  3月10号和3月15号早上9点到下午5点每两分钟执行一次
*/2 09-17 10,15 3 5   3月的每个周五、 3月的10号和3月15号早上9点到下午5点每两分钟执行一次

2.5用户级定时任务的发起

  1. 周期任务发起方式 crontab命令的执行格式为: crontab-u用户-e

  1. crontab命令参数如下

  • -u :用来设定某个用户的crontab服务此参数一般有root用户来运行

  • file: file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab

  • -e :编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件

  • -l :显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。

  • -r :从/var/spool/cron目录中删除某个用户的crontab文件

  • -i :在删除用户的crontab文件时给确认提示。

  • crontab 在设定定时任务是会以vi命令打开临时文件在保存时会把内容同步到/var/spool/cron中

  • 文件格式为:分 时 天 月 周 执行动作 1111 * * * echo hello #每天11点11分执行echo hello 命令

    时间表达方式

#参数演示

#发起并指定
[root@rhce-fuxi mnt]# crontab -u user1 -e
no crontab for user1 - using an empty one
crontab: installing new crontab
[root@rhce-fuxi mnt]# ls -l /var/spool/cron/user1
-rw------- 1 root root 15  9月 13 14:30 /var/spool/cron/user1
[root@rhce-fuxi mnt]#

[root@rhce-fuxi mnt]# crontab  -l -u user1
* * * * * date

[root@rhce-fuxi mnt]# crontab -r -i -u user1
crontab: really delete user1's crontab?

 

2.6 发起系统级别的周期任务

系统级别crontab目录详解

2.7定时任务执行优化

  • 定时任务在执行时首先会查看执行者是否名单中

  • 系统中默认只存在黑名单/etc/cron.deny,写入此文件中的用户会被禁止使用定时任务。

  • 在系统中可以手动建立白名单/etc/cron.allow,当此文件出现黑名单不会被检测

  • 白名单出现只有root用户和白名单用户可以执行定时任务

  • 如果系统中没有黑白名单那么只有root用户可以执行任务

  • 黑白名单为用户列表,每个用户一行

  • 黑白名单只针对用户级定时任务进行限制

[root@rhce-fuxi ~]# ll /etc/cron.deny
-rw-r--r--. 1 root root 0 11月 30  2023 /etc/cron.deny
[root@rhce-fuxi ~]# ll /etc/cron.allow


[root@rhce-fuxi ~]# vim /etc/cron.deny
[root@rhce-fuxi ~]# cat /etc/cron.deny
user1

[root@rhce-fuxi ~]# su - user1
[user1@rhce-fuxi ~]$ crontab -e
You (user1) are not allowed to use this program (crontab)
See crontab(1) for more information
[user1@rhce-fuxi ~]$


#创建白名单
[root@rhce-fuxi ~]# touch /etc/cron.allow
[root@rhce-fuxi ~]# cat /etc/cron.allow
[root@rhce-fuxi ~]#

此时普通用户都不可以

[root@rhce-fuxi ~]# echo user1 > /etc/cron.allow
[root@rhce-fuxi ~]#

[user1@rhce-fuxi ~]$ crontab -l
* * * * * date
[user1@rhce-fuxi ~]$

#超级用户可以使用,无权限限制
[root@rhce-fuxi ~]# crontab -u user2 -e

#限制超级用户的
[root@rhce-fuxi mnt]# chattr +i easylee/
[root@rhce-fuxi mnt]# ls
!  easylee  hgfs
[root@rhce-fuxi mnt]# rm -fr easylee/
rm: 无法删除 'easylee/': 不允许的操作
[root@rhce-fuxi mnt]#

#查看
[root@rhce-fuxi mnt]# lsattr -d easylee/
----i----------------- easylee/
[root@rhce-fuxi mnt]# chattr -i easylee/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/875318.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

自选择问题和处理效应模型

这里写目录标题 自选择问题和处理效应模型Tobit 模型假定Heckman过程逆米歇尔比率推导过程逆米希尔比率推导过程自选择问题典型事实分析一定要列出来的关于OLS&#xff0c;Heckman-2sls&#xff0c;Heckman三种模型的估计结果对比Heckman两阶段算逆米希尔比率分解 处理效应模型…

labview禁用8080端口

需求背景 最近电脑上安装了labview全家桶,发现idea的8080端口项目启动报错,一直提示8080端口被占用。最简单的办法就是找到8080端口的服务,然后关闭这个服务。但是我不想这么做,我想把labview的web服务器的端口给修改了。 操作教程 1、cmd查看8080端口 2、windows进程 同…

pgAdmin 4备份数据库失败,解决

pgAdmin4中&#xff0c;必须先设置二进制路径&#xff1b;binary paths pgAdmin4操作路径&#xff0c;File—>Preferences—>Paths—>Binary paths 找到postgreSQL的安装目录&#xff0c;bin目录复制&#xff0c;然后设置在截图标记位置&#xff1b; 再去备份数据库就…

flux.1模型在40hx上绘图实践

flux.1是新成立的AI绘画团队。核心成员来自于Stability AI。Stability AI曾经开创了AIGC的新纪元&#xff0c;但管理团队在经营理念上一直有分歧&#xff0c;到了SD3的推出后&#xff0c;团队在开源还是闭源的问题上&#xff0c;产生了重大冲突&#xff0c;直到模型又一次无意外…

零基础5分钟上手亚马逊云科技-为网站服务器配置DNS域名

简介 欢迎来到小李哥全新亚马逊云科技AWS云计算知识学习系列&#xff0c;适用于任何无云计算或者亚马逊云科技技术背景的开发者&#xff0c;通过这篇文章大家零基础5分钟就能完全学会亚马逊云科技一个经典的服务开发架构方案。 我会每天介绍一个基于亚马逊云科技AWS云计算平台…

SAP 公司间采购配置简介

SAP 公司间采购配置简介 说明后台配置说明 上一篇博文中我们演示了公司间采购的前台的操作,本文将针对公司间采购的后台的配置进行说明。 后台配置 1、定义工厂的装运数据 路径:IMG—物料管理—采购—采购订单—设置库存调拨订单—定义工厂的装运数据 在这里插入图片描述 …

集成电感器TPS82130

集成电感器TPS82130 简介 TPS82130是集成了电感跟0603一样大的BUCK降压模块。输入电压3-17V&#xff0c;输出电压0.9-6V&#xff0c;输出电流3A&#xff0c;0.8V参考电压。 TPS82130属于系统级的封装电源模块&#xff0c;目前价格大概是4.5元。它可以实现100%的占空比&#x…

Zookeeper工作机制、特点、数据结构、应用场景、配置参数解读

ZK工作机制 从涉及模式角度来理解&#xff1a;是一个基于观察者模式设计的分布式服务管理框架&#xff0c;负责存储和管理大家都关心的数据&#xff0c;然后接受观察者的注册&#xff0c;一旦这些数据的状态发生变化&#xff0c;zk就负责通知已在zk上注册的那些观察者做出相应…

什么是CPU、GPU、NPU?(包懂+会)

目录 举例子 CPU&#xff1a;主厨 GPU&#xff1a;大量的厨房助理 NPU&#xff1a;面包机 总结 讲理论 CPU&#xff08;中央处理器&#xff09; GPU&#xff08;图形处理单元&#xff09; NPU&#xff08;神经网络处理单元&#xff09; 对比分析 举例子 CPU&#xff…

基于SpringBoot+Vue的个性化旅游推荐系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于JavaSpringBootVueMySQL的…

监控系统添加vcenter上的esxi主机

监控系统的软件选择&#xff1a; 监控系统要求 快速搭建 能快捷地添加vcenter上的主机&#xff08;esxi&#xff09; 能实现动态添加主机监控 可供选择的监控软件 Prometheus vmware_exporter添加 vcenter及esxi监控&#xff0c;报奇怪的错误&#xff0c;解决时间比较长&a…

端口安全老化细节

我们都知道port-security aging-time命令用来配置端口安全动态MAC地址的老化时间&#xff0c;但是后面还可以加上类型&#xff1a; [SW1-GigabitEthernet0/0/1]port-security aging-time 5 type absolute Absolute time 绝对老化 inactivity Inactivity time相对老化 …

Qt 中openMp 配置

Qt 中openMp 配置 前言 openMP是使用CPU进行并行计算&#xff0c;在实际项目中处理耗时的for循环等&#xff0c;简单有效&#xff0c;本文记录下使用Qt \C项目开发时如何配置openMP 二、工程配置 1.Qt Creator pro工程 区分编译器&#xff0c;配置pro文件 MSVXXX编译器&am…

曝光破21亿,新茶饮行业如何掘金抖音?

沪上阿姨CEO单卫钧曾说&#xff1a;“新茶饮有几个特点&#xff0c;第一个是资本化&#xff0c;第二个是连锁化&#xff0c;第三个就是线上化。” 具体到线上化&#xff0c;除了美团、饿了么这些传统渠道之外&#xff0c;越来越多茶饮咖啡品牌开始布局抖音、快手等内容平台。在…

【kubernetes】配置管理中心Configmap运用

一&#xff0c;介绍 Configmap&#xff08;简写 cm&#xff09;是k8s中的资源对象&#xff0c;用于保存非机密性的配置的&#xff0c;数据可以用key/value键值对的形式保存&#xff0c;也可通过文件的形式保存。 【局限性】&#xff1a;在ConfigMap不是用来保存大量数据的&am…

腾讯云使用

注&#xff1a;本文的所有演示的代码都基于尚硅谷的尚乐代驾项目 对象存储COS 一种云存储器 官方文档&#xff1a; 对象存储 快速入门-SDK 文档-文档中心-腾讯云 (tencent.com) 一 上传文件 1 初始化客户端 官方示例&#xff1a; // 1 传入获取到的临时密钥 (tmpSecret…

Qt | ubuntu20.04安装Qt6.5.3并创建一个example完整教程(涉及诸多开发细节,商用慎重)

点击上方"蓝字"关注我们 01、下载 >>> 下载Qt在线安装包 这里采用镜像地址进行下载,避免网络过慢。 镜像地址:http://mirrors.ustc.edu.cn/qtproject/archive/online_installers/4.5/ 选择最新版本下载,如截至目前最新版本为qt-unified-linux-x64-4.5.2…

Python数据分析于可视化

Python数据分析于可视化 一、前言二、引言三、需求分析四、系统设计1.系统功能结构2.系统业务流程图 五、系统开发必备 一、前言 个人主页: ζ小菜鸡大家好我是ζ小菜鸡&#xff0c;让我们一起来学习Python数据分析于可视化。如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连…

计算机网络 --- 计算机网络的分类

一、计算机网络分类 1.1 按分布范围分类 举例&#xff1a;广域网&#xff08;WAN&#xff09;、局域网&#xff08;LAN&#xff09; 举例&#xff1a;个域网&#xff08;PAN&#xff09; 1.2 按传输技术分类 广播式网络――当一台计算机发送数据分组时&#xff0c;广播范围…

国外创意二维码应用案例:迪卡侬太会搞事情了!

想必大家还记得前不久轰动全球的蓝屏事件。多个国家多个行业的大量用户都受到了影响&#xff0c;就在航空公司、银行、超市、酒店、电信、媒体……因为突发的电脑蓝屏故障而手忙脚乱的时候&#xff0c;迪卡侬&#xff08;Decathlon&#xff09;却在这场“危机”中看到了机会。 …