我安装了该heirloom-mailx
软件包并尝试用它mailx
发送电子邮件:
$ echo "heirloom mailx works!" | mailx -s "Server mail" [email protected]
然而操作没有成功:
Cannot start "/usr/sbin/sendmail": executable not found (adjust *sendmail* variable)
"/root/dead.letter" 6/136
... message not sent
我是否需要安装sendmail
才能使用heirloom-mailx
?
答案1
我解决了安装问题sendmail
:
$ sudo apt-get install sendmail
sendmail
安装完成后,我进行/etc/hosts
如下编辑,添加一个有效的域:
127.0.1.1 ubuntu example.org
然后我使用以下命令重新配置 sendmail:
$ sendmailconfig
现在我可以从我的服务器发送电子邮件。
答案2
我是否需要安装 sendmail 才能使用 heirloom-mailx?
不,但你需要邮件服务。hierloom-mailx
可以设置为使用邮件传输协议:
支持 SMTP 直接将消息发送到远程服务器。因此无需设置本地 sendmail 接口。与 OpenSSL 或 NSS 结合使用时,可以使用 STARTTLS 方法和 SMTPS。还支持 SMTP AUTH。
但是您需要配置 heirloom-mailx。
使用 SMTP
mailx -v -s "$EMAIL_SUBJECT" \
-S smtp=smtp://smtp.server.com
-S from="$FROM_EMAIL_ADDRESS($FRIENDLY_NAME)" \
$TO_EMAIL_ADDRESS
使用 Gmail:
mailx -v -s "$EMAIL_SUBJECT" \
-S smtp-use-starttls \
-S ssl-verify=ignore \
-S smtp-auth=login \
-S smtp=smtp://smtp.gmail.com:587 \
-S from="$FROM_EMAIL_ADDRESS($FRIENDLY_NAME)" \
-S smtp-auth-user=$FROM_EMAIL_ADDRESS \
-S smtp-auth-password=$EMAIL_ACCOUNT_PASSWORD \
-S ssl-verify=ignore \
-S nss-config-dir=~/.mozilla/firefox/xxxxxxxx.default/ \
$TO_EMAIL_ADDRESS