CentOS系统计划任务Crontab

这篇具有很好参考价值的文章主要介绍了CentOS系统计划任务Crontab。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

       CentOS计划任务是一种在Linux系统上自动执行特定任务的功能。在CentOS系统上,我们可以使用crontab命令来创建和管理计划任务。

以下是创建CentOS计划任务的步骤:

    1. 打开终端并登录到root账户;
    2. 输入命令“crontab -e”,打开计划任务编辑器;
    3. 编辑器中有7个字段,分别表示分钟、小时、日、月、周、要执行的命令和命令参数;
    4. 每个字段可以使用*(代表任意值)或数字指定特定数值。例如,如果要在每天的上午9点执行任务,则可以使用“0 9 * * * 命令”;
    5. 完成编辑后,按“ctrl+x”保存并退出编辑器。

【注意:在计划任务中使用的命令必须是系统中已安装的可执行文件或脚本。】

目录

1 计划任务概念解析

2 计划任务分类

3 Crontab详解

 3.1 安装软件

 3.2 启动服务

 3.3 编辑和保存crontab

  3.3.1 第一部分:时间

  3.3.2 第二部分:动作

 3.4 查看计划任务

 3.5 删除计划任务

 3.6 计划任务的权限控制

【注意事项】


1 计划任务概念解析

Linux系统的计划任务是指可以定期执行特定命令或程序的系统工具。计划任务可以自动执行,无需用户干预,可用于定期备份、日志清理、定时任务等。在Linux中,最常用的计划任务工具是crontab

Crontab是Linux中的一种任务定时工具,可以帮助我们在指定时间自动执行特定的命令或脚本。Crontab可以在系统中设置多个定时任务,每个任务可以设置不同的执行时间、周期和执行命令。

Crontab的语法非常简单,由6个字段组成,分别代表分钟、小时、日期、月份、星期几和要执行的命令或脚本。(简称:分时日月周)例如,下面的Crontab条目表示每天凌晨2点执行一次backup.sh脚本:

0 2 * * * /home/user/backup.sh

Crontab的优点是它可以自动执行和管理任务,无需用户干预。但是,Crontab也有一些注意事项,例如它只能精确到分钟级别,无法处理秒级别的任务;另外,它需要用户具备一定的Linux基础知识才能使用。

2 计划任务分类

Linux计划任务可以分为系统级别和用户级别两种:

1. 系统级别计划任务:系统级别计划任务通过修改系统的crontab文件来实现,这些任务可以以root用户身份运行,并且可以在整个系统中执行。这些任务通常用于系统级别操作,如备份、日志清理、系统更新等。

2. 用户级别计划任务:用户级别计划任务可以由每个用户创建自己的crontab文件来实现,这些任务只能在该用户的环境中运行。这些任务通常用于用户级别操作,如邮件提醒、定期备份等。

此外,Linux计划任务还可以按照执行方式分为以下两种:

1. 定时任务:定时任务是指在一定时间间隔内周期性执行的任务,例如每天、每周或每月执行一次备份操作。

2. 周期任务:周期任务是指在特定日期或时间执行的任务,例如在某个具体时间点执行特定操作。

3 Crontab详解

【系统默认安装并启动Crontab的,如果没有,根据如下步骤逐个做;如果,请直接跳转到3.3

 3.1 安装软件

使用“yum -y install crontabs”命令安装。

yum -y install crontabs

 3.2 启动服务

在Linux系统中,并没有专门的crontab服务需要启动。crontab是Linux系统内置的定时任务工具,在启动系统时就已经加载并启用了。如果你想确认crontab是否已经启用,可以使用以下命令:

systemctl status crond.service

如果crontab正在运行,你会看到以下内容的输出:

centos crontab,CentOS,centos,linux,运维

如果crontab没有启动,你可以使用以下命令来启动crontab:

systemctl start crond.service

如果你想在每次系统启动时自动启动crontab,可以使用以下命令:

systemctl enable crond.service

这样,crontab服务就会在每次系统启动时自动启动,无需手动启动。

 3.3 编辑和保存crontab

要编辑crontab,可以使用以下命令: 

crontab -e

这会打开一个文本编辑器,你可以在里面输入要执行的命令或脚本以及相关的时间和执行频率。编辑完成后,可以点击“ESC”键输入“:wq”保存并退出。

【编辑内容如下】

  3.3.1 第一部分:时间

范围

0~59

0~23

1~31

1~12

1~7

上面的时间范围可以查看man手册:0

man 5 crontab

“man 5 crontab”是一个Linux系统中的手册页命令,可以帮助用户了解crontab文件的格式和内容,以及如何编辑和管理crontab文件。

crontab任务的时间格式如下:

* * * * *       command
| | | | | ----- Day of the week (0 - 7) (Sunday is both 0 and 7)
| | | | ------- Month (1 - 12)
| | | --------- Day of the month (1 - 31)
| | ----------- Hour (0 - 23)
| ------------- Minute (0 - 59)

各种时间写法举例:

0 * * * *        每个小时的整点 

5 10 * * *        每天的十点五分                *表示每...                     

1,5,9 * * * *        1,5,9表示:一、五、九分钟                ,表示取不同的范围点

8-12 * * * *        8-12表示八到十二分钟                -表示范围

*/5 * * * *        */5表示每隔5分钟

# 每天早上6点运行程序
0 6 * * * /path/to/program

# 每周五晚上9点半备份数据库
30 21 * * 5 /path/to/backup_script.sh

# 每小时运行一次清理脚本
0 * * * * /path/to/clean_script.sh
 

  3.3.2 第二部分:动作

把上面规定的时间、要执行的命令写进去,当然包括脚本(最常用),命令最好要写绝对路径。

最终我们使用“crontab -e”命令编写如下命令。

*/10 * * * * /usr/bin/touch /tmp/1.txt

centos crontab,CentOS,centos,linux,运维

最后编写成功后,保存退出即可。

 3.4 查看计划任务

方法一:使用“crontab -l”命令。

crontab -l

方法二:使用“cat /var/spool/cron/root”命令。

cat /var/spool/cron/root

centos crontab,CentOS,centos,linux,运维

 3.5 删除计划任务

使用“crontab -r”命令删除计划任务。

【使用这条命令将删除所有的定时任务,谨慎使用!

crontab -r

一般我们删除计划任务使用“crontab-e”命令进去删除所想删除的任务就好。

centos crontab,CentOS,centos,linux,运维

我们删除刚才所编辑的计划任务,然后使用“crontab -e”查看,发现显示“no crontab for root
”即表示我们删除成功!

 3.6 计划任务的权限控制

在CentOS系统中,Cron服务的功能是在超级用户root的权限下运行的,因此,只有root用户才能够控制和编辑CentOS系统的计划任务。

当然,如果你想让其他用户也能够控制和编辑计划任务,可以将他们添加到“crontab”或“cron.allow”文件中。具体步骤如下:

(1)创建“cron.allow”文件,如果该文件不存在的话。可以使用以下命令进行创建:

touch /etc/cron.allow

(2)向“cron.allow”文件中添加允许控制计划任务的用户名。例如,如果你想允许“user1”和“user2”控制计划任务,可以使用以下命令:

echo "user1" >> /etc/cron.allow
echo "user2" >> /etc/cron.allow

(3)保存“cron.allow”文件以后,运行以下命令重启Cron服务:

systemctl restart crond

这样,用户“user1”和“user2”就可以通过“crontab -e”命令来编辑和控制计划任务了。

!!!需要注意的是,如果同时存在“cron.allow”和“cron.deny”文件时,只有在“cron.allow”文件中列出的用户才能够控制和编辑计划任务。因此,在安全性方面,建议只使用“cron.allow”来控制用户的权限。

【注意事项】

1.crontab的时间是按照系统时间执行的,当系统时间出现变化时,crontab的执行时间可能会受到影响。可以使用“date”命令查看系统时间。

2.crontab的执行结果会输出到标准输出,可以使用重定向或者管道符将结果输出到指定的文件中。

3.crontab任务的执行权限和环境变量需要与执行用户匹配,否则任务可能无法执行或者产生不确定的结果。

4.要在crontab中使用环境变量,需要先定义环境变量在crontab中。

5.crontab的执行频率最好不要太高,以免占用过多系统资源。

 

创作不易,给个三连吧~

centos crontab,CentOS,centos,linux,运维 文章来源地址https://www.toymoban.com/news/detail-770536.html

到了这里,关于CentOS系统计划任务Crontab的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Centos】crontab系统定时配置加载用户环境变量

    使用linux系统crontab默认是没有加载用户的环境变量的,所以有些命令是用不了的。 打开任务计划 添加环境变量信息 开头加入如下内容: 完整内容示例如下: 3. 保存即可

    2024年02月15日
    浏览(43)
  • 云计算 3月7号 (crontab-计划任务 日志轮转 免密登录)

    一、计划任务 计划任务概念解析 在Linux操作系统中,除了用户即时执行的命令操作以外,还可以配置在指定的时间、指定的日期执行预先计划好的系统管理任务(如定期备份、定期采集监测数据)。RHEL6系统中默认已安装了at、crontab软件包,通过atd和crond这两个系统服务实现

    2024年03月20日
    浏览(46)
  • 【Linux】crontab 定时任务

    当你需要在Linux系统中定期执行某些任务时,crontab(cron table)是一个非常有用的工具。它允许你根据预定的时间表创建和管理定时任务。 按照进程的功能和运行的程序分类,进程可划分为两大类。 系统进程 :可以执行 内存资源分配和进程切换等 管理工作;而且,该进程的

    2024年02月10日
    浏览(55)
  • Linux 定时任务调度(crontab)

    Crontab命令用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。 可以使用Crontab定时处理离线任务,比如每天凌晨2点更新数据等,经常用于系统任务调度。 一般Linux系统中都会装有Crontab,如果没有安装可以使

    2024年02月07日
    浏览(75)
  • Linux Crontab命令定时任务

    1,crontab:是Linux,unix的定时任务,需要系统安装crontab程序,存储的指定被守护进程crond激活,每分钟去检查一次需要执行的job, 2,新创建的cron任务,不会马上执行,至少要过 2 分钟后才可以,可以重启 cron 来马上执行。 3,检查是否安装crontab: rpm -qa | grep crontab 4,全局配置文

    2024年02月16日
    浏览(51)
  • Linux crontab命令定时任务详解

            crond是Linux系统中用来定期执行命令或指定程序任务的一种服务或软件,与Windows下的计划任务类似。当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程。crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任

    2024年02月04日
    浏览(41)
  • Linux 定时任务 crontab 用法学习整理

    lsb_release -a linux中crontab命令用于设置周期性被执行的指令,该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。cron 系统调度进程。可以使用它在每天的非高峰负荷时间段运行作业,或在一周或一月中的不同时段运行。cron是系统主要的调度

    2024年02月11日
    浏览(45)
  • Linux通过crontab定时执行脚本任务

    在Linux中可以使用crontab来定时执行脚本。crontab是一个用于管理定时任务的工具,可以让在特定的时间间隔内自动运行脚本或命令。 需求 : 在Linux中每分钟写入一条信息到指定文件中,使用 cron 来定期执行一个写入命令或脚本 首先,在 home 目录下创建一个名为 testscript.sh 的脚

    2024年02月17日
    浏览(50)
  • crontab做系统定时任务命令

    给系统设置一个定时的任务,相当于一个闹钟 我们每天的0点去做一些清理工作,自检工作,重要数据存盘备份工作,一个组里面很多同时都在提交代码,git作为代码管理工具,每一天都可能使用git仓库里面的代码 用里面的代码做一个打包,生成当成哦我们软件的一个版本,

    2024年02月06日
    浏览(50)
  • crontab -e 系统定时任务

    crontab 是由 “cron” 和 “table” 两个单词组成的缩写。其中,“cron” 是一个在 Linux 和类 Unix 操作系统中用于定时执行任务的守护进程,而 “table” 则是指一个表格或者列表,因此 crontab 就是一个用于配置和管理定时任务列表的命令。 crontab -e 是一个用于编辑 crontab 文件的命

    2024年02月13日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包