Crontab 和 sSMTP

aka*_*tis 3 email command-line cron

我的服务器是 Ubuntu 12.04.3 Cron 作业工作正常。我可以通过命令行发送电子邮件,使用mail,ssmtpsendmail. 我已经在顶部设置了正确的电子邮件地址crontab -e

MAILTO=myemail@gmail.com

* * * * *  echo blaaah
Run Code Online (Sandbox Code Playgroud)

但是我在 mail.log 中得到的是

sSMTP[4267]: 550 5.7.1 Client does not have permissions to send as this sender
Run Code Online (Sandbox Code Playgroud)

这很奇怪,因为我能够通过命令行发送电子邮件。有任何想法吗?

小智 9

我有一个类似的问题。对我来说,答案其实很简单。

执行 cron 的用户/环境找不到 ssmtp 二进制文件。只需添加完整的路径即可成功。

# m     h       dom     mon     dow     command
0       9       *       *       *       /usr/sbin/ssmtp a@hotmail.com < /home/a/a-msg.txt
Run Code Online (Sandbox Code Playgroud)