• Ubuntu系统下crontab的使用


    最近一个项目,需要用到一个定时任务,先说crontab的常用命令。


    crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数
    crontab -l //列出某个用户cron服务的详细内容
    crontab -r //删除没个用户的cron服务
    crontab -e //编辑某个用户的cron服务

    接下来我的调试过程

    (1)编辑加入自己的命令

    crontab -e  //编辑某个用户的cron服务

    */1 * * * * /usr/bin/php   /var/send.php   每分钟都执行一次

    send.php

    编辑如下

    <?php
        echo 'this is a work';
    ?>

    没有出现运行结果,于是乎,就去查看日志,结果在/var/log下没有发现 cron.log文件,这我就纳闷了,why?

    经过研究发现原来日志服务器rsyslog没有开启对crontab的支持,接下来进入/etc/rsyslog.d/ 

    cd /etc/rsyslog.d/
    ls
    20-ufw.conf  50-default.conf //会有连个文件
    vim 50-default.conf
    编辑如下:

    找到 cron.* 所在行

    #  Default rules for rsyslog.
    #
    #            For more information see rsyslog.conf(5) and /etc/rsyslog.conf
    
    #
    # First some standard log files.  Log by facility.
    #
    auth,authpriv.*            /var/log/auth.log
    *.*;auth,authpriv.none        -/var/log/syslog
    cron.*                /var/log/cron.log
    #daemon.*            -/var/log/daemon.log
    kern.*                -/var/log/kern.log
    #lpr.*                -/var/log/lpr.log
    mail.*                -/var/log/mail.log
    #user.*                -/var/log/user.log

    去掉前面的#。ok,接下来 使用命令cron restart重启,啊哟,报错了,

    cron: can’t lock /var/run/crond.pid, otherpid may be

    解决方案:

    rm /var/run/crond.pid
    ps -A | grep cron
    kill 进程ID

    然后继续 cron restart,Ok了,但是还没还结果,现在我们可以看看日志啦。

    tail /var/log/cron.log

    发现错误如下:

     (CRON) info (No MTA installed, discarding output)

    出错原因:

    报错的主要原因是没有配置邮件服务器.

    有两个原因会导致这个错误发生:

     1,当你执行命令是shell脚本时

      解决方案:在每条命令后面加上:

      >/dev/null 2>&1

     2,当你向窗口输出时,因为内容的输出是cron通过邮件发送的

      解决方案:将输出内容导入一个文件 >> /tmp/test.txt

     

    更过的进阶技术可以关注公众号:进阶的脚步  回复学习资料  有惊喜哦

  • 相关阅读:
    Linux学习40 运维必备技能-Linux软件包管理yum企业实战
    【Kafka】Kafka集群基础操作!新手上路必备~
    【Kafka】Kafka集群环境搭建
    【Kafka】消息队列相关知识
    【Hadoop离线基础总结】oozie的安装部署与使用
    【Hadoop离线基础总结】Hue与oozie集成
    【Hadoop离线基础总结】oozie定时任务设置
    【Hadoop离线基础总结】oozie任务串联
    【Hadoop离线基础总结】oozie调度MapReduce任务
    【Hadoop离线基础总结】oozie调度hive
  • 原文地址:https://www.cnblogs.com/feiyafeiblog/p/7113014.html
Copyright © 2020-2023  润新知