【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

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

然后我们查看

相关推荐
chlk1231 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑1 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件1 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash2 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行3 天前
Linux和window共享文件夹
linux
木心月转码ing3 天前
WSL+Cpp开发环境配置
linux
崔小汤呀4 天前
最全的docker安装笔记,包含CentOS和Ubuntu
linux·后端
何中应4 天前
vi编辑器使用
linux·后端·操作系统