• crontab计划任务


    1 服务

    crontab服务名叫crond,默认enable。

    加载到crontab里的定时任务,crond服务会去执行。

    异常:如果服务器内存过载,可能会杀掉crond,导致定时任务不执行。

    2 日志

    定时任务日志文件为/var/log/cron,logrotate服务会按周切割。最新日志存在/var/log/cron里面。

    [root@xx log]# cat /etc/cron.daily/logrotate 
    #!/bin/sh
    
    /usr/sbin/logrotate /etc/logrotate.conf >/dev/null 2>&1
    EXITVALUE=$?
    if [ $EXITVALUE != 0 ]; then
        /usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
    fi
    exit 0
    

     

    [root@xx log]# ls /var/log/ | grep cron
    cron
    cron-20180603
    cron-20180610
    cron-20180617
    cron-20180624
    

      

    [root@webmaster scripts]# cat /var/log/cron | tail -3
    Jul  5 10:01:01 webmaster run-parts(/etc/cron.hourly)[50121]: finished mcelog.cron
    Jul  5 10:02:01 webmaster CROND[50133]: (root) CMD (cd /data/scripts;/usr/bin/python /data/scripts/uv_monitor.py 1>a1 2>b1)
    Jul  5 10:10:01 webmaster CROND[50220]: (root) CMD (/usr/lib64/sa/sa1 1 1)
    [root@webmaster scripts]# 
    

      

    3 crontab 命令

    crontab -l用于查看当前定时任务

    crontab -e为编辑定时任务。保存退出后直接生效。

    格式为* * * * * username command最好用全路径。

    案例:每周一5点对/srv/salt/进行备份,按时间命名放在/bak/salt目录下。

    [root@salt-server salt]# cat /scripts/salt_bak.sh 
    #!/bin/sh
    cp -a /srv/salt /bak/salt/salt-`date "+%Y%m%d"`
    tar cvf /bak/salt/salt-20180303.tar /bak/salt/salt-20180303/
    
    chmod +x /scripts/salt_bak.sh
    crontab -e
    >>
    00 5 * * 1 root /scripts/salt_bak.sh
    

      

    00 06 14 12 * killall -9 some_svr
    #定个时间,12月14号早晨6点kill掉所有这个服务的进程
    

      

      

  • 相关阅读:
    php中file_get_contents的图片乱码
    Lsh and Rsh (左移和右移)
    |=的含义
    Intercultural Communication Drama
    VS代码块快速折叠快捷键
    C++sqrt()函数与sqrtf()函数的区别
    C++中union和struct之间的区别
    泛型编程
    生成百度网盘目录文件
    字符串前L的含义
  • 原文地址:https://www.cnblogs.com/jabbok/p/8495352.html
Copyright © 2020-2023  润新知