欢迎光临,赤鹿小组
记录过程,分享经验

crontab任务不会执行解决方案(No MTA installed, discarding output)

在生产环境下,添加了 crontab 定时计划任务,后面发现,定时任务并没有执行,在指定的文件夹下并没有相对应的日志产生。于是编者便展开了如下的思路解决了该问题。

一、查看 crontab 的日志

[[email protected] ] cat /var/log/cron
Apr 15 06:25:02 10-8-26-214 CRON[30007]: (CRON) info (No MTA installed, discarding output)
...
Apr 15 06:26:01 10-8-26-214 CRON[30145]: (CRON) info (No MTA installed, discarding output)
...

发现在日志内有上述的信息,该信息主要是提示操作人员没有安装 postfix ,所以进行软件的安装:

[[email protected] ] sudo apt-get install -y postfix    # ubuntu
[[email protected] ] sudo yum -y install postfix        # centos

但是当时进行了上述操作后,也并没有解决问题。
于是乎,想到了 命令的绝对路径填写 ,就是将如 bash 这样的命令修改成 /bin/bash ,但是好像也是行不通。

二、查看 mail 日志
查看 mail 下的用户日志,并如下图所示:

[[email protected] ] cat /var/mail/seichung

crontab

想到,系统会不会自己去 /bin 下寻找这条命令了?于是,做了软连接到 /bin下,并赋予 777 权限。

[[email protected] ] ln -s /usr/local/php/bin/php /bin/php
[[email protected] ] chmod 777 /bin/php

不久,开始出现相对应的日志文件。日志也在不断地开始写入。从而也就解决了该问题。

赞(0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址