CentOS 7.6中的计划任务管理(at、crontab)

一、概述

在linux操作系统中,除了用户即时执行的命令操作以外,还可以配置在指定的时间,指定的日期执行预先计划好的系统管理任务(如定期备份等)

二、一次性任务

CentOS7系统中的一次性计划任务是由at软件包提供,通过atd这个服务实现的,并通过at命令进行计划任务的配置,使用at设置的计划任务只会执行一次,并且atd服务必须正在运行
在这里插入图片描述
在这里插入图片描述
若是最小化安装的系统是没有at的,需要yum安装一下

1、新建任务

at 加时间日期
在这里插入图片描述

2、查看任务

atq
在这里插入图片描述
在这里插入图片描述

3、删除任务

atrm 加任务编号
在这里插入图片描述
在这里插入图片描述

4、语法格式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5、权限设置

计划任务在/etc/at.deny禁止哪些用户设定计划任务)默认为空
计划任务默认是任何用户都可以执行的:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、周期性任务

CentOS7系统中的周期性计划任务是由cronie软件包提供,通过crond这个服务实现的,并通过crontab命令进行计划任务的配置
在这里插入图片描述
在这里插入图片描述

  • 系统配置文件目录:/etc/crontab
  • 日志存放目录:/var/log/cron*
    在这里插入图片描述
  • 用户cron任务的配置文件存放目录:/var/spool/cron
    任务存储在一个以用户名命名的文件中
    在这里插入图片描述

若配置文件改变不需要重启进程就可以生效,因为crond守护进程会自动检查各个配置文件:/etc/crontab、/etc/cron.d、/var/spool/cron

1、创建任务

crontab -e
在这里插入图片描述
在这里插入图片描述
每一行代表一个任务
在这里插入图片描述

如果没有重定向操作的话,系统会发送邮件给用户,用mail查看,q退出

在这里插入图片描述
在这里插入图片描述

2、查询任务

crontab -l
在这里插入图片描述

3、删除任务

crontab -r
#删除用户所有的任务列表,如果只删除某一个可以用crontab -e进去里面修改
在这里插入图片描述

4、管理用户任务

超级管理员root可以用crontab -u 用户名 来管理其他用户的任务计划
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5、语法格式

在这里插入图片描述
在这里插入图片描述

6、权限设置

与at类似,默认所有用户都可以执行crontab设置计划任务,如有需要可以通过在/etc/cron.deny中添加用户来禁止该用户设置计划任务。也可以自行创建/etc/cron.allow来使用白名单。
当系统安排任务计划时:
查找allow文件—>查找deny文件

如果2个文件中存在同一用户,因为allow权限更高所以还是允许该用户创建计划任务

7、配置实例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/shengjie87/article/details/106891754