版权声明: 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
不久,开始出现相对应的日志文件。日志也在不断地开始写入。从而也就解决了该问题。