我的理解是:
- 必须安装并配置 sSMTP
- MAILTO= 必须在 crontab 顶部添加
我已经安装了以下说明: https://wiki.archlinux.org/index.php/SSMTP
我读过其他教程,但是它们都是 2009 年左右的,已经过时了。
我按照说明进行测试后,发现它无法工作。
> echo test | mail -s "testing ssmtp setup" <email_address>
mail: cannot send message: Process exited with a non-zero status
我尝试发送电子邮件的电子邮件地址是@gmail.com 地址。
答案1
邮件:无法发送消息:进程以非零状态退出
- 查看你的日志。
- 查明退出状态是什么。
- 调查它的含义。
- 应用变更来纠正。
答案2
首先您应该在系统上安装一个 MTA。
sudo apt-get install exim4
之后您应该使用 smtp 参数配置此 MTA(在您的情况下是 gmail):
sudo dpkg-reconfigure exim4-config
选择智能主机使用并设置正确的 smtp(gmail smtp 服务器)地址。为确保您已正确配置 smtp 服务器,请检查dc_smarthost参数/etc/exim4/更新-exim4.conf.conf文件。
如果你必须为 smtp 服务器提供密码验证,请检查此项链接内容要做到这一点。
如果智能主机配置正确,则发送命令必须在 shell 脚本中运行:
echo "Mail Body" | mail -s "Suject" [email protected]
这是发送邮件的基本方法,为了对其进行改进:男子邮件