计划任务

          前要:Linux的计划任务主要分为三块。单一的执行一次计划任务,系统自动的选择空闲时间去执行特定的任务,

周期性的执行相关任务,下面就此三块做简要的描述。

一:单一的计划任务at

        1:使用at命令需要先行启动atd服务

            查询at命令需要启动的服务名字

            rpm -ql  at ,所显示的文件列表中

            centos6:init.d后面的名字为服务名

            centos7.后缀为service的为服务的名字

   计划任务

  计划任务

           查询服务有无开启

centos6:service atd status

centos7:systemctl status atd

计划任务

计划任务

启动服务:

             service atd start

             systemctl  start  atd

2:用法

      at  为一次性创建计划任务的命令。创建计划任务后会生成相关的文件存放在/var/apool/at目录中。

    eg

                               计划任务

                     基本使用:

                                  

      创建:

                                1at 时间

                                  at>  cmd1

                                  at>  cmd2

                                  ctrl+d  退出创建

                   计划任务

                            

                                2   at -f  从指定文件中读取计划任务列表

                      查询:

                              at –l  查询已经创建的计划任务列表

                              cat  /var/spool/at/*  可以直接查看要创建的计划任务列表内的 详细内容

                           计划任务

                            计划任务

                           计划任务

                                

          删除:

                                             at –d 3

                                            3:为创建的计划任务编号

                     3:相关配置文件

                         /var/spool/at  存放已经创建的计划任务

                        /etc/at.deny  此文件内放的是不可以创建计划任务的用户,为黑名单

                       /etc/at.allow  此文件默认不存在,自己创建后 里面放的是可以创建计划任务的用户

                                         相当于白名单,除了白名单的用户,其他用户不可以创建

                       备注:删除deny
allow
文件后。只有root用户可以创建计划任务

  二:系统计划任务


    1:系统自带的周期性计划任务:

/etc/hourly     每小时执行

/etc/cron.daily  每天执行

/etc/weekly    每周执行

/etc/cron.monthly  每月执行

/etc/cron.d/

2:自行更改系统周期计划任务

             更改 /etc/crontab文件

     计划任务

    格式:

          # *  *  *  *  *
user-name command to be executed

          执行频率: * *  *  *  *

     1)* 表示给定时间点上有效取值范围的所有值

     2)*/# 表示每#单位执行一次

     3)#,#,#  离散取值

     4)特殊举例

       02 15,28 * 0,6

       表示的意思是周六周日以及每个月的15号及28号执行命令

 user-name:  以哪个用户的身份运行计划任务

 command:   计划任务的内容

三:用户自行创建周期性计划任务

   创建: crontab  –e

     使用命令 crontab –e  自行打开 周期性计划任务文本

        按照时间 命令的格式写入计划任务的内容即可。

        用户创建的计划任务保存在

            /var/spool/cron/目录下

计划任务

  删除:crontab –d

        也可以直接删除/var/spool/cron/下的计划任务文件

  查看: crontab –l

  更改: crontab –e
–u user 
更改其他用户的计划任务,只有root可用

  控制用户执行计划任务:

       /etc/cron.deny

       /etc/cron.allow

原创文章,作者:mapipi,如若转载,请注明出处:http://www.178linux.com/78942

联系我们

400-080-6560

在线咨询

工作时间:周一至周五,9:30-18:30,节假日同时也值班

QR code