【Linux】-学习笔记05

第一章、系统延迟任务与定时任务

1.延迟任务

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

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

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

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

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

1.1命令:
复制代码
at 参数 时间
1.2参数
复制代码
-m 当任务完成之后,即使没有标准输出,将给用户发送邮件
-l atq的别名,可列出目前系统上面的所有该用户的at调度
-d atrm的别名,可以取消一个在at调度中的工作
-v 使用较明显的时间格式,列出at调度中的任务列表
-c 可以列出后面接的该项工作的实际命令内容
-f 从文件中读取作作业
1.3白名单与黑名单

黑名单(at.deny)默认存在,在名单中的用户不能执行at命令,

白名单(at.allow)默认不存在,但是当白名单出现时,黑名单将不会被检测,并且只有在白名单中出现的用户才可以使用at命令

2.定时任务

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

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

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

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

2.1周期任务发起方式

2.1.1命令
复制代码
crontab --u 用户 --e
2.1.2参数
复制代码
-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中

2.1.3白名单与黑名单

黑名单(cron.deny)默认存在,在名单中的用户不能执行crontab命令,

白名单(cron.allow)默认不存在,但是当白名单出现时,黑名单将不会被检测,并且只有在白名单中出现的用户才可以使用crontab命令

2.2系统级别的周期任务

crontab目录

我们进入到自定义系统的目录下,建立文件设置命令

我们建立一个/etc/cron.work

复制代码
mkdir /etc/cron.work

编辑自定义文件

在该文件夹/etc/cron.work/touch.sh下编写任务

提升运行的权限

复制代码
chmod +x /etc/cron.work/touch.sh

2.3定时邮件

首先下载

复制代码
dnf install postfix s-nail -y

接着启动

复制代码
systemctl start postfix

我们设定一分钟后发送邮件

然后我们查看

相关推荐
MarcoPage2 小时前
Python 字典推导式入门:一行构建键值对映射
java·linux·python
埃伊蟹黄面3 小时前
计算机的“身体”与“灵魂”:冯·诺依曼架构与操作系统
linux
im_AMBER5 小时前
React 17
前端·javascript·笔记·学习·react.js·前端框架
winner88815 小时前
Linux 软件安装 “命令密码本”:yum/apt/brew 一网打尽
linux·运维·服务器
报错小能手5 小时前
C++笔记——STL map
c++·笔记
谷歌开发者6 小时前
Web 开发指向标 | Chrome 开发者工具学习资源 (六)
前端·chrome·学习
思麟呀6 小时前
Linux的基础IO流
linux·运维·服务器·开发语言·c++
winner88817 小时前
嵌入式Linux驱动开发全流程:工具协作+核心概念拆解(从入门到理解)
linux·运维·驱动开发
lkbhua莱克瓦247 小时前
Java基础——集合进阶3
java·开发语言·笔记
ShiinaKaze7 小时前
fatal error: bits/c++config.h: No such file or directory
linux·gcc·g++