cron 如何知道要使用什么 MTA?请问这个信息存储在哪里? (使用 Ubuntu KK。)
编辑:整个故事如下:我在 crontab 中启用了 MAILTO 选项,并安排了一些任务。当任务被触发时,系统抱怨没有安装MTA,所以我安装了ssmtp。有趣的是,我从未在我的系统上安装过 sendmail,也不认为它是默认安装的。因此我只有 ssmtp。现在,我需要确保任何发送电子邮件的应用程序都绑定到某个特定的 NIC,因此需要以 firejail 为前缀启动它。现在的问题是,我如何知道 cron 启动了哪个电子邮件应用程序,以及如何使用 firejail 前缀启动它。
答案1
如果您阅读手册页,您会看到有一个开关,-m
其中指出......
此选项允许您指定用于发送 Cron 邮件输出的 shell 命令,而不是使用 sendmail(8) 此命令必须接受标准输入上完全格式化的邮件消息(带标头)并将其作为邮件消息发送到指定的收件人在邮件标题中。指定字符串 off (即 crond -m off)将禁用邮件的发送。
换句话说,它将调用sendmail
,并且发行版可能会确保已为已安装的 mta 设置了符号链接,该符号链接应支持它。如果没有,则发送失败。