linux 定时器etccrontab

    xiaoxiao2023-03-24  1

    (1)首先确定系统是否已经安装cron相关的包:

    [root@localhost ~]# rpm -qa |grep cron

    如果有类似一下信息则说明已经安装:

    vixie-cron-4.1-54.FC5

    anacron-2.3-36.1

    crontabs-1.10-7.1

     

    (2)cron配置文件被修改后,想让新文件生效,必须重新crond服务器,有两种方法可供选择;

    1.在Fedora或Redhat 等以RPM包管理的系统中:

    [root@localhost ~]# /etc/init.d/crond start

    [root@localhost ~]# /etc/init.d/crond stop

    [root@localhost ~]# /etc/init.d/crond restart

     

    如果想自动开机运行:

    [root@localhost ~]# chkconfig --levels 35 crond on

     

    2.通用:

    [root@localhost ~]# pgrep crond  注:判断crond 是否在运行

    [root@localhost ~]# pkill crond  注:杀掉正在运行中的crond

    [root@localhost ~]# pgrep crond  注:查看是否被杀掉了

    [root@localhost ~]# /usr/sbin/crond  注:运行crond

     

    (3)打开配置文件:

    [root@localhost ~]# more /etc/crontab

     

    我们发现有类似这些行;

    1 * * * * root run-parts /etc/cron.hourly  

    注:表示每个小时的第一分钟,开始执        行/etc/cron.hourly目录下的可执行程序或脚本

     

    2 4 * * * root run-parts /etc/cron.daily  

    注:表示每天的4点2分,开始执行/etc/cron.daily目录下的可执行程序或脚本

     

    22 4 * * 7 root run-parts /etc/cron.weekly

    注:每年第7个周4点22分,开始执行 /etc/cron.weekly目录下的可执行程序或脚本

     

    42 4 1 * * root run-parts /etc/cron.monthly

    注:每月第1天的4点42分,开始执行/etc/cron.monthly目录下的可执行程序或脚本

     

    (4)cron配置文件的格式:

     分钟 小时 日  月  周   [用户名]  命令

     说明:

     第一段应该定义的是:分钟,表示每个小时的第几分钟来执行。范围是从0-59

    第二段应该定义的是:小时,表示从第几个小时来执行,范围是从0-23

    第三段应该定义的是:日期,表示从每个月的第几天执行,范围从1-31

    第四段应该定义的是:月,表示每年的第几个月来执行,范围从1-12

    第五段应该定义的是:周,表示每周的第几天执行,范围从0-6,其中 0表示星期日。

    每六段应该定义的是:用户名,也就是执行程序要通过哪个用户来执行,这个一般可以省略;

    第七段应该定义的是:执行的命令和参数。

     

    (5)举例:

    shell下输入crontab -e

     

    加入以下内容:

    #backup logs of xfs at the 28 day per month 00 2 28 * * root run-parts /usr/local/XFS/logbackup.sh

     注:表示每月的28号的凌晨2点开始执行/usr/local/XFS/logbackup.sh脚本

     

    #del backup logs at the first day of July of per year 00 2 1 7 * root run-parts /usr/local/XFS/del_log.sh

     :表示每年的7月1号凌晨2点开始执 行/usr/local/XFS/del_log.sh脚本

     


    run-parts命令说明

     

    # mkdir /etc/cron.min */5 * * * * root run-parts /etc/cron.min

     

    以上的意思是说明,每5分钟执行/etc/cron.min目录下的所有脚本,run-parts就是说明执行目录下的所有的脚本的意思,root的话就说明已root身份去执行。

    转载请注明原文地址: https://ju.6miu.com/read-1200096.html
    最新回复(0)