通过msmtp 0x004e#012输出cron电子邮件时出错
通常我将msmtp安装为本地邮件程序,安装比postfix/其他程序容易得多,而且功能相当强大。 将此内容保存在/etc/msmtpc中通过msmtp 0x004e#012输出cron电子邮件时出错,cron,msmtp,Cron,Msmtp,通常我将msmtp安装为本地邮件程序,安装比postfix/其他程序容易得多,而且功能相当强大。 将此内容保存在/etc/msmtpc中 defaults tls_trust_file /etc/ssl/certs/ca-bundle.crt account default host smtp.gmail.com port 587 tls on auth on user redacted@example.com password password from redacted@example.co
defaults
tls_trust_file /etc/ssl/certs/ca-bundle.crt
account default
host smtp.gmail.com
port 587
tls on
auth on
user redacted@example.com
password password
from redacted@example.com
logfile /var/log/msmtp.log
aliases /etc/aliases
我有一个错误:
CROND[1587]:(ec2用户)邮件(发送了580字节的输出,但状态为0x004e#012)
对于所有应该为ec2用户发送电子邮件的cron
使用mailx发送工作正常:
echo "TEX" | mailx -s "TEST" redacted@example.com
有关调试此问题的任何提示?我找不到关于我得到的状态码的太多信息回答我自己,我找到了一种详细触发错误的方法,基本上你必须使用sendmail发送邮件:
echo "From: root \
To: ec2-user \
Subject: Hello World \
\
This is the email body" | sudo sendmail -d -t ec2-user
在错误消息中,我得到了错误解释:
sendmail:/etc/别名:第11行:无效地址“postmaster”
因为在/etc/alias文件中创建的某些条目(可能在ec2映像中已经存在)的结构如下:
mailer-daemon: postmaster
因为postmaster对msmtp没有任何意义,所以它抛出了错误。注释掉这几行(#)后,邮件正常发送