RHCSE第一天(Linux的例行性工作)

Linux搭建服务器的准备工作

  1. 操作环境 : 创建完虚拟机,安装命令行界面的linux操作系统(centos8,rocky8,rhel8)
  2. 为服务器配置白名单和安全组 :vim /etc/selinux/config,selinux=disabled
  3. 关闭防火墙:systemctl disable firewalld
  4. 网络设置 :在NAT模式下,配置至少一个可上网的静态IP 写好yum源(本地源,网络源)
  5. 安装好相应的常用工具 :vim,netstat,bash-completion,chrony
    让你的系统时间可以自动根据时间服务器进行同步
  6. 写好当前局域网内主机的hosts文件
  7. 做快照

第一章 Linux的例行性工作

1.1 单一执行的例行性工作at

单一执行的例行性工作:单一执行的例行性工作:仅处理执行一次就结束了,at 的对应的服务名 atd

我们使用 at 命令来生成所要运行的工作,并将这个工作,以文本方式写入/var/spool/at/目录内,该工作便能等待 atd 这个服务的取用与执行了。

为了安全问题,不是所有人都可以进行 at 工作调度。我们可以利用/etc/at.allow和/etc/at.deny 这两个文件来进行 at 的使用限制。

1.1.1 at命令的实际工作过程
  1. 寻找到/etc/at.allow文件存在,写在这个文件的用户才能使用at命令
    /etc/at.allow不存在,则寻找/etc/at.deny文件,写在该文件的用户不能使用at命令
  2. 若两个文件都不存在,那么只有root可以使用at命令

注意:

在 rhel 里面,由于假设系统上的所有用户都是可信任的,所以允许所有人使用 at 命令,/etc/at.deny
文件为空,如果你想设置拒绝某人使用 at 命令,你可将该用户写入/etc/at.deny文件

1.1.2 at命令详解

命令格式:at [参数] [时间]

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

时间格式
在这里插入图片描述

1.2 循环执行的例行性工作

循环执行的例行性工作**:每隔一定的周期就需要执行一次,crontab

循环执行的例行性工作调度是由crond这个系统服务来控制的。同样,我们也可以限制使用crontab的用户账号。

1.2.1 crontab命令的实际工作过程

1、以账号来判别是否可使用crontab命令

  • /etc/cron.allow 将可以使用 crontab 的账号写入其中,若不在该文件内的用户 则不可使用 cronta
  • /etc/cron.deny 将不可以使用 crontab 的账号写入其中,若不在该文件内的用 户则可使用 crontab。

2、当用户使用 crontab 新建工作调度之后,该项工作就会被记录到/var/spool/cron/里面

3、cron 执行的每一项工作都会被 记录到/var/log/cron这个日志文件中

1.2.2 crontab命令详解

命令格式crontab [-u user] [-l | -r | -e]
在这里插入图片描述

编辑 crontab

[root@localhost cron]# crontab -e	

文件格式为:每一行为一个工作,每项工作具有六个字段
在这里插入图片描述

文件内的特殊字符:
在这里插入图片描述

1.3 实验

实验一:定义三分钟之后显示hello
at now + 3 minutes

注释:
atq可以查看目前主机上有多少的at工作调度
atrm可以删除某项at工作调度

实验二 : 每天早上9点整,说good morning
 0 9 * * * wall "good morning"

注释:

wall命令用于向系统当前所有打开的终端上输出信息。
通过wall命令可将信息发送给每位同意接收公众信息的终端机用户,若不给予其信息内容,则wall命令会从标准输入设备读取数据,然后再把所得到的数据传送给所有终端机用户。

实验三:指定某些用户不可以执行计划任务

分别在下面两个文件中添加上拒绝执行计划任务的用户

/etc/at.deny
/etc/cron.deny
实验四:系统的例行性任务
[root@localhost ~]# vim /etc/crontab 

SHELL=/bin/bash 运行计划所使用的shell 默认是bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin 指定命令执行环境变量路径
MAILTO=root MAILTO变量指定了crond的任务执行信息将通过电子邮件发送给root用户
user-name command to be executed

user-name表示执行命令的用户是谁
当需要同一时间执行多个脚本时,可以将这多个脚本放在一个目录下,然后使用run-parts来执行。
run-parts:该命令可将后面接的“目录”内的所有文件找出来执行。

实验五:可唤醒停机期间的工作任务

anacron 可以处理关机状态时未执行的计划任务,anacron不能指定何时执行某项任务,而是以天为单位或是在开机后立刻进入anacron的操作(/etc/anacrontab)。它会去检测停机期间应该进行但是并没有进行的crontab任务,并将该任务执行一遍,然后anacron就会自动停止了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值