RHCE第一章 例行性工作

例行性工作

单一执行的例行性工作

仅处理执行一次就结束了

at命令的工作过程
  • /etc/at.allow,写在该文件的用户可以使用at命令
  • /etc/at.deny,黑名单
  • 两个文件如果都不存在,只有root能使用
  • 如果两个文件都有这个用户,则按照allow执行
#查看at程序有没有运行
[root@localhost ~]# ps -ef | grep at
#at工作调度对应的系统服务
[root@localhost ~]# systemctl status atd
#at的工作文件存放目录
[root@localhost ~]# ll  /var/spool/at
#at工作的日志文件
[root@localhost ~]# ll /var/log/cron
at命令详解

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

参数:
-m 当任务完成之后,即使没有标准输出,将给用户发送邮件
-l atq的别名,可列出目前系统上面的所有该用户的at调度
-d atrm的别名,可以取消一个在at调度中的工作
-v 使用较明显的时间格式,列出at调度中的任务列表
-c 可以列出后面接的该项工作的实际命令内容(脚本)
-f 从文件中读取作作业
时间格式:
HH:MM 在今天的HH小时MM分钟执行,如果今天的这个时间点已经过了,则明
天执行
HH:MM YYYY-MM-DD 强制规定在某年某月的某一天的特殊时刻进行该工作
now + 2 minutes 从现在开始几分钟minutes, hours, days, or weeks

案例:

定义1分钟之后显示hello(时间是从敲完“at now + 1 minutes”后开始计时)

在这里插入图片描述

输错时,按住crl在按删除即可删除

效果:
在这里插入图片描述

其他命令:(命令前加#表示注释)

1、atq:查看任务列表
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
“8” 表示任务编号

“a root” 对应的用户

2、atrm [任务编号] 或者 at -d [任务编号] :删除任务

创建任务后,会在任务文件(/var/spool/at)中创建一个随机命名(随机字符长度是固定的)的任务文件
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
打开/var/spool/at/a0000901b301e0文件(删除此文件也有删除任务的效果)

[root@localhost ~]# vim /var/spool/at/a0000901b301e0

在这里插入图片描述

Linux 9版本默认没有邮件收发功能

装包(邮箱)

[root@localhost yum.repos.d]# yum install postfix

[root@localhost yum.repos.d]# systemctl restart postfix ---- 重新启动postfix服务

查找某个包(crond)是否存在

1、 yum list installed | grep crontab

2、rpm -qa | grep crontab

查找程序是否运行

ps -aux | grep crond

循环执行的例行性工作crond

每隔一定的周期就需要执行一次

crontab的工作过程
  • /etc/at.allow,写在该文件的用户可以使用at命令
  • /etc/at.deny,黑名单
  • 两个文件如果都不存在,只有root能使用
  • 如果两个文件都有这个用户,则按照allow执行
#crontab工作调度对应的系统服务
[root@localhost ~]# systemctl status crond
#crontab工作的日志文件
[root@localhost ~]# ll /var/log/cron
#用户定义计划任务的文件所在目录
[root@localhost ~]# ll /var/spool/cron/
crontab命令详解
[root@localhost ~]# crontab  --help
crontab: invalid option -- '-'
crontab: usage error: unrecognized option
Usage:
 crontab [options] file
 crontab [options]
 crontab -n [hostname]

Options:
 -u <user>  define user
 -e         edit user's crontab
 -l         list user's crontab
 -r         delete user's crontab (清空)
 -i         prompt before deleting	(在删除用户 crontab 文件之前进行确认。)
 -n <host>  set host in cluster to run users' crontabs
 -c         get host in cluster to run users' crontabs
 -s         selinux context
 -V         print version and exit	(打印版本并退出)
 -x <mask>  enable debugging	(启用调试)

编辑crontab:crontab -e

crontab计划任务的时间格式:
在这里插入图片描述

0-590-231-311-120-7

date 更改的时间格式:月日时分年.秒

crontab计划任务的时间格式中的特殊符号:

特殊字符含义
*代表任何时刻
,代表分隔时段
- 0-59代表一段时间范围
/数字指定时间的间隔频率,例如每 3 分钟进行一次,*/3

注:%在crontab里面有特殊含义,如果有命令里面需要使用%,需要使用\转义。

crontab -e

通过 crontab -e 编辑可以通过 (crontab -l -u 用户 )来查看用户有哪些任务信息

一般通过某一个用户添加任务信息,也会产生一个临时文件(这个临时文件在/var/spool/cron),

临时文件文件名:以哪个用户编辑的周期性任务文件,会把该任务文件以这个用户名命名

vim etc/crontab

写在 /etc/crontab 这个文件只能通过 cat 的方式去查看对于用户有哪些任务信息

系统当中任意用户所添加的周期性任务都可以写到该文件。所用用户都对该文件由匹配权限

#每天早上9点整说good morning
[root@server ~]# crontab -e
0 9 * * * wall "good morning"

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

系统的计划任务

当需要同一时间执行多个脚本时,可以将这多个脚本放在一个目录下,然后使用run-parts来执行。

run-parts:该命令可将后面接的“目录”内的所有文件找出来执行。

可唤醒停机期间的工作任务

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

课堂练习

实验一:定义三分钟之后显示hello

at now + 3 minutes

实验二 : 每天早上9点整,说good morning

 0 9 * * * wall "good morning"

注释

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

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

/etc/at.deny

/etc/cron.deny

实验四:系统的例行性任务

[root@localhost ~]# vim /etc/crontab 

上输出信息。

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

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

/etc/at.deny

/etc/cron.deny

实验四:系统的例行性任务

[root@localhost ~]# vim /etc/crontab 
  • 12
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值