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

版权声明: https://blog.csdn.net/Scirhh/article/details/89323235

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

一、查看 crontab 的日志

[root@seichung ] 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 ,所以进行软件的安装:

[root@seichung ] sudo apt-get install -y postfix	# ubuntu
[root@seichung ] sudo yum -y install postfix		# centos

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

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

[root@seichung ] cat /var/mail/seichung

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

[root@seichung ] ln -s /usr/local/php/bin/php /bin/php
[root@seichung ] chmod 777 /bin/php

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

猜你喜欢

转载自blog.csdn.net/Scirhh/article/details/89323235