对于使用以下命令的测试电子邮件
(echo "Hi") | mailx -v -r [email protected] -s "Subject Test" -c [email protected] [email protected]
我在特定场景中得到以下输出
[email protected]... Connecting to smtphostnamesomething via relay
421 4.3.2 Service not available
>>> QUIT
[email protected]... Deferred: No such file or directory
Closing connection to smtphostnamesomething.
我了解根本原因,并且我的团队已经解决了它,但是我主要关心的是在这种情况下从 mailx 命令获得的返回值.. 这是 0(成功)
通常在发送邮件时出现错误的任何情况下,返回值都是 != 0。
在这些情况下,我的邮件未发送,而尝试发送邮件的服务由于返回值 0 而认为它已发送。
无论如何,我们是否可以处理返回值或提前检查服务状态是否确实在发送邮件!
还有我所做的一些其他检查和相应的输出..
ps -ef|grep sendmail
root 3277280 2228680 0 Aug 31 - 0:18 sendmail: rejecting new messages: min free: 100
lssrc -s sendmail
Subsystem Group PID Status
sendmail mail 3277280 active
谢谢。
答案1
您的 sendmail 似乎由于可用磁盘空间不足而拒绝新邮件。
使用 sendmail 队列目录检查文件系统上的可用空间,如果空间不足,请释放一些空间。