linux之定时任务

linux之定时任务

    一、什么是定时任务

    定时任务命令是cond,crond就是计划任务,类似于我们平时生活中的闹钟,定点执行。

    二、为什么要用crond?

    计划任务主要是做一些周期性的任务,比如凌晨3点定时备份数据、晚上23点开启网站抢购接口、凌晨0点关闭抢占接口等。

计划任务主要分为以下两种使用情况:

     1.系统级别的定时任务

临时文件清理、系统信息采集、日志文件切割

     2.用户级别的定时任务

定时向互联网同步时间、定时备份系统配置文件、定时备份数据库的数据。

      三、crond格式

*  *  *  *  *  : crontab表达式

      1、增加定时任务(crontab -e)

            每天的凌晨2:50执行/root/1.sh

            50 02 * * * /root/1.sh

       2、查看crontab定时任务

            crontab -l

       3、每一个用户的定时任务是相对隔离,在/var/spool/cron目录下,以当前用户的用户名命名的文件。

       4、常用命令

             head:从头开始查看文件,默认查看10行

                     -n :指定查看多少行

                tail:从尾部开始查看文件,默认查看10行

                     -n :指定查看多少行

                     - f :实时监控文件变化

                  less :类似于vim的方式查看文件:cat、grep、egrep

         5、定时任务格式

 1     * * * * *
 2     每隔2分钟执行
 3         */2 * * * *
 4         
 5     每天的2,468,10这4个小时的1分钟执行
 6         01 2,4,6,10 * * * 
 7         
 8     每天的2到6点执行
 9         00 2-6 * * *
10     
11     每天的2到6点中每隔2小时执行
12         00 2-6/2 * * *
13         
14     00 02 * * 02   : 每天的2点时执行,但是这天必须时周二
定时任务

       四、定时任务软件种类

             1.定时任务软件:cronie

                  默认系统自带定时服务 crond(crontab)

             2.定时任务软件:atd

                  定时任务只执行一次,一次性定时服务

             3.定时任务软件:anacron

                  非7*24小时运行的服务器

        五、如何检查软件是否安装?

              rpm -qa:查看系统中是否有指定的软件大礼包

              rpm -ql:查看软件大礼包中都有什么数据信息

              rpm -qf:查看一个命令文件属于哪个软件大礼包

              rpm -ivh:利用rpm安装软件大礼包

              rpm -e
              rpm -e cronie --nodeps:禁止yum remove卸载软件

        六、定时任务实现方式

             1、系统定时任务

                 1>系统会自动运行里面的内容,系统中毒的时候

                     1.系统定时任务周期:每小时:控制定时任务目录:/etc/cron.hourly

                     2.系统定时任务周期:每一天:控制定时任务目录:/etc/cron.daily

                     3.系统定时任务周期:每一周:控制定时任务目录:/etc/cron.weekly

                     4.系统定时任务周期:每个月:控制定时任务目录:/etc/cron.monthly

                 2>系统定时任务的配置文件之一

                      /etc/crontab

                 3>系统定时任务+logrotate命令 完成对 日志的日志切割/日志轮询

                     1./var/log/cron 

                     2./var/log/messages 

                     3./var/log/secure

                 4>用户定时任务

                      #一个命令+一个文件:crontab、/var/spool/cron/root

                      1.用户定时任务

                          crontab -l(list)

                        列表查看定时任务信息(cron table)

                      2.用户定时任务编辑

                         crontab -e(edit)

                         编辑配置定时任务信息

                     3.定时任务配置文件

                         /var/spool/cron/root

                         root文件表示是root用户设置的定时任务

                   5>常见提示信息

                       1.相应用户没有编辑定时任务

                          no crontab for root

                       2.定时任务编辑错误是否继续

                          Do you want to retry the same edit


 

                       

posted @ 2021-12-17 16:36  Roseblacko  阅读(1741)  评论(0编辑  收藏  举报