zoukankan      html  css  js  c++  java
  • Linux之crond定时任务

     

     

    1. 使用crontab工具配置的定时任务

    2. 配置定时任务建议规范

    3. 定时任务配置问题导致系统出现故障实例

    1. 使用crontab工具配置的定时任务

    名称
           crontab - 维护单个用户的crontab文件
    
    用法
           crontab [-u user] [-l | -r | -e] [-i] [-s]
    
    选项
    -l    (list)查看crontab文件内容    crontab -l == cat /var/spool/cron/[user]
    -e    (edit)编辑crontab文件内容    crontab -e == vim /var/spool/cron/[user]
    -i    删除crontab文件内容,删除前会提示确认
    -r    删除crontab文件内容
    -u    指定使用的用户执行
    
    补充说明
    1. * * * * * 分别为 分(0-59) 时(0-23) 日(1-31) 月(1-12) 周几(0-6)
    
    2. \%F    在定时任务配置中,%要用转义

    2. 配置定时任务建议规范

    书写规范:
        ① 为定时任务规则加必要的注释
        ② 执行shell脚本任务前加/bin/sh,以执行权限执行文件
        ③ 定时任务命令或脚本结尾加
            >/dev/null 2>&1 或 &>/dev/null1>/dev/null 2>/dev/null
        ④ 定时任务命令或程序最好写到脚本里执行
        ⑤ 在指定用户下执行相关的定时任务
        ⑥ 生产任务程序不要随便打印输出信息
        ⑦ 定时任务执行的脚本要规范路径(例:/test/scripts)
    
    调试建议:
        ① 增加执行任务频率调试任务
        ② 调整系统时间调试任务(个人环境进行)
        ③ 通过脚本日志输出调试定时任务
        ④ 注意:环境变量导致的定时任务故障(java)
        ⑤ 通过crond定时任务服务日志调试定时任务
        ⑥ 调试脚本用"sh -x 脚本", 打印输出脚本执行过程

    3. 定时任务配置问题导致系统出现故障实例

    故障问题:
        服务器上发生了No space left on device故障,df -h发现磁盘空间还有剩余,df -i发现文件系统inode占满,
    这是由于系统内小文件过多导致的,其中一个可能原因就定时任务配置不规范 解析: centos5
    /var/spool/clientmqueue centos6 /var/spool/postfix/maildrop 默认定时任务执行时会给root发邮件信息,如果邮件服务不开,就会把邮件存放到上述目录 当定时任务结尾不加&>dev/null的时候,上述目录就会存在大量的小文件,从而导致系统inode被占满 解决方法: 1. 清除邮件目录下的小文件 2. 检查系统内的定时任务配置是否缺少&>dev/null的重定向
  • 相关阅读:
    [你必须知道的异步编程]C# 5.0 新特性——Async和Await使异步编程更简单
    [C# 开发技巧系列]使用C#操作Word和Excel程序
    全面解析C#中参数传递
    VSTO之旅系列(四):创建Word解决方案
    [C# 开发技巧系列] 使用C#操作幻灯片
    VSTO之旅系列(五):创建Outlook解决方案
    [C# 开发技巧系列]C#如何实现图片查看器
    [你必须知道的异步编程]——异步编程模型(APM)
    [你必须知道的异步编程]——基于任务的异步模式
    [C# 开发技巧系列]如何动态设置屏幕分辨率
  • 原文地址:https://www.cnblogs.com/Caiyundo/p/10314949.html
Copyright © 2011-2022 走看看