首页 > 系统相关 >Linux(CentOS7)定时执行任务Crond详细说明&操作图解

Linux(CentOS7)定时执行任务Crond详细说明&操作图解

时间:2023-10-03 09:55:19浏览次数:47  
标签:cron crontab crond CentOS7 etc Linux root Crond

一、Cron服务
1)概念介绍

cron是服务名称。 crond是后台进程,用来执行脚本,在系统中一直会运行。
crontab是一个工具,用来管理定时任务列表,定制好的计划任务,需要启动crond服务(系统默认安装),crond服务是通过crontab命令实现。

2)crontab工作

运行linux后,开机自启动crond任务,系统会每分钟检查是否有要执行的任务工作(循环检测)。
cron执行时,要读取三个地方的配置文件:一是/etc/crontab,二是/etc/cron.d目录下的所有文件,三是每个用户的配置文件一般位于/var/spool/cron目录下

3)运行日志查看

a、cron执行的每一项工作都会被纪录到/var/log/cron这个日志文件中,可查看命令执行的状态
b、标准输出,错误输出重定向到crod.log(可自行定义) ,在执行命令后面增加 >>/opt/cron.log 2>&1
c、如果不需要日志,避免产生垃圾文件可以改成(linux的回收站)>>/dev/null 2>&1

二、cron服务启动

[root@CentOS7-0001 /]# /sbin/service crond status     //查看状态
[root@CentOS7-0001 /]# /sbin/service crond start     //启动
[root@CentOS7-0001 /]# /sbin/service crond stop      //停止
[root@CentOS7-0001 /]# /sbin/service crond restart    //重启
[root@CentOS7-0001 /]# /sbin/service crond reload    //重载
1
2
3
4
5
默认不会开机启动,如需开机启动在 /etc/rc.d/rc.local 脚本中加入 /sbin/service crond start
即可。 CentOS7的rc.local不具备执行权限,需要授权

[root@CentOS7-0001 /]# chmod +x /etc/rc.d/rc.local

三、cron的三种配置方式

系统级:编辑 /etc/crontab文件,添加执行命令 用户级 :执行 crontab -e 命令,然后添加上图中的最后一条语句保存即可。
不同点 : /etc/crontab为系统级任务,多用户均可访问执行,而crontab -e是用户自定义的定时任务,不是多用户共享的,所以比较推荐使用这种方式

1、用户级任务crontab -e(常用)

执行 crontab -e 命令,然后最后添加一条语句保存即可。 查看当前用户的cron配置,使用 crontab -l
编辑当前用户的cron配置,使用 crontab -e 删除当前用户的cron配置,使用 crontab -r

示例:
*/5 * * * * /opt/software/rsyncfile.sh >/dev/null 2>&1
0 2 1 4 * /opt/software/rsyncfile_day.sh >/dev/null 2>&1

2、系统级任务(少用)

如果是『系统性任务』时,就要编辑 /etc/crontab 这个文件,crontab -e 这个 crontab 其实是
/usr/bin/crontab 这个运行档,但是 /etc/crontab 可是一个『纯文字档』,必须用 root
的身份编辑一下这个文件。直接编辑/etc/crontab文件,添加执行命令。但是一般不建议这样做,/etc/cron.d目录就是为了解决这种问题而创建的。
例如,增加一项定时的备份任务,我们可以这样处理:在/etc/cron.d目录下新建文件backup.sh,内容如下: * 1 * * *
root /sbin/mon_zetc_logtar.sh >> /dev/null 2>&1
cron进程执行时,就会自动扫描该目录下的所有文件,按照文件中的时间设定执行后面的命令。

3.用户级任务/var/spool/cron/(少用)

直接将运行的程序写在用户的配置文件里边.比如像让zhanhj用户执行一个cron任务
可以在/var/spool/cron/目录下边创建一个文件zhanhj,将* 1 * * *
/usr/local/etc/rc.d/lighttpd restart 写入zhanhj文件,保存退出即可
注意zhanhj是一个文件,不是目录。

四、扩展权限设置(少用)

1)拒绝用户使用crontab任务 在/etc/cron.deny中添加要拒绝的用户名
2)允许用户访问crontab任务在/etc/cron.allow中添加要拒绝的用户名
在/etc/cron.allow中添加要允许的用户名,格式如下: /etc/cron.allow优先于/etc/cron.deny配置
————————————————
版权声明:本文为CSDN博主「zhanhjxxx」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zhanhjxxx/article/details/122810322

标签:cron,crontab,crond,CentOS7,etc,Linux,root,Crond
From: https://www.cnblogs.com/outrun/p/17740824.html

相关文章

  • 通过linux0.11学习操作系统原理--Apple的学习笔记
    一,前言最近在断断续续的看linux0.11的源码介绍,主要是了解linux操作系统的原理,之前已经了解了进程的切换主要是cpu上下文切换+虚拟内存切换。今天我主要看了下改开始linux启动的进程0,1,2。二,分析先回顾了之前的问题LDT和GDT的区别?   GDT用作内核态的代码和数据段,LDT用作用户进......
  • linux使用glibc版本安装mysql8.0.12
    1、前言使用yum安装虽然很方便,但是如果要是在没有公网的环境下,是没有办法使用yum源的。所以我们可以使用mysql提供的glibc版本的安装包,进行安装。但是在安装之前,一定要将以前的版本删除,包括/etc/my.cnf和/etc/my.cnf.d一类的文件全部删除,否则在启动的时候会导致混乱。从而报错。软......
  • Linux centos 安装 mysql 5.6.43
    一、mysql下载1、方式一(简单粗暴)直接在linux 目录下wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.43-linux-glibc2.12-x86_64.tar.gz2、方式二(官方下载)浏览器打开网址:https://www.mysql.com如下图依次点击1、2、3、4步如下图设置对应版本点击Downloa......
  • Linux中xargs命令学习
    转自:https://zhuanlan.zhihu.com/p/340804463?utm_id=0,提到了许多参数,用到时可以参考1.介绍 cat/etc/passwd|greproot   等同于  echo"helloworld"|echo管道命令|,将左侧命令(cat/etc/passwd)的标准输出转换为标准输入,提供给右侧命令(greproot)作为参数。但有些命......
  • Linux-hsp 7-9章 指令
    开机&重启命令:1)shutdown-hnow     立刻关机2)shutdown-h1        1分钟后关机3)shutdown-rnow现在重启计算机4)halt  关机,同上5)reboot现在重启计算机6)sync 把内存的......
  • LINUX:FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.
     如图,问题表现为linux中可直接通过hive进行数据插入但在通过datagrip却更改不了此时,可能时yarn的运行分配的内存较少,或堆内存溢出。在yarn-site.xml中更改,以及mapred-site.xml中更改,完成。yarn的<property><name>yarn.scheduler.minimum-allocation-mb</name>......
  • linux shell脚本判断当前登录用户是否为root
    脚本实现1(root-1.sh):#!/bin/bashROOT_UID=0if["$UID"-eq"$ROOT_UID"];thenecho"Youareroot."elseecho"Youarejustanordinaryuser(butmonlovesyoujustthesame)."fiexit0脚本实现2(root-2.sh):#!/bin/ba......
  • 手把手教你在linux中部署kong网关
    一Kong网关介绍Kong是一个云原生,快速,可扩展的分布式微服务抽象层(也被称为API网关或API中间件),它的核心价值是高性能和可扩展性,于2015年作为一个开源项目提供;Kong可以充当微服务请求的网关(或辅助工具),同时通过插件提供负载均衡,日志记录,身份验证,速率限制,转换等功能,从而为您提供帮助......
  • linux中hive常用命令
     kill-929676杀死进程ps-ef|grep23697查看进程tail-flogs/hiveserver2.log查看2信息nohupbin/hive--servicehiveserver2>>logs/hiveserver2.log2>&1&后台加载报错和运行信息到2start-all.sh启动所有服务 ......
  • linux 中 tr -dc 命令
     001、tr-dcstring:表示删除字符以外(补集complement)的所有字符[root@pc1test]#lsa.txt[root@pc1test]#cata.txt##测试文本0102abdef03jkk.04,f05f06[root@pc1test]#cata.txt|tr-dc[:digit:]##表示删除数字......