目标是在我的 Drobo 5N NAS 设备上运行 cron 作业时实现外发电子邮件通知。但是,似乎没有安装任何允许外发电子邮件的软件包,例如 mail、sendmail 或 ssmtp。
我更愿意使用 Gmail 帐户发送电子邮件,看来 SSMTP 非常适合。但是,apt-get、yum 或 pacman 都无法从 shell 运行,并返回“未找到”。我会手动安装软件包,但我甚至不确定此机器运行的是哪个版本的 Linux(例如 Debian Squeeze、Arch 等)。
当我发出命令时:
$cat /proc/version
返回的内容是:
Linux version 3.2.58-2 (root@buildtestserver3) (gcc version 4.4.5 20100614
(prerelease) (FSF GNU GCC branch-4.4.5. Marvell GCC 201106-257.a1ba7f96) )
#1 SMP Thu May 26 14:04:32 PDT 2016
并且,命令:
$uname -mrs
返回:
Linux 3.2.58-2 armv7l
所以,
- 是否可以在此盒子上安装 SSMTP 包?并且,
- 需要手动下载哪个合适的 SSMTP 包?最后,
- 我该如何手动安装它?
提前感谢您的贡献。
答案1
1) 原则上是的。
Drobo 不是 Debian 系统,所以您不能使用 Debian 软件包。甚至 ARM 软件包也不行,因为它们将针对不同的库进行编译。
这意味着你要么必须进行交叉编译,要么找到已经进行过交叉编译的人。谷歌搜索Droboports地点。
2)看看他们的应用程序存储库,似乎没有现成的MTA应用程序。
这意味着您选择您认为最简单的东西,首先尝试在您的 PC 上的 Debian 下自行编译它以了解它是如何工作的,然后使用提供的工具进行交叉编译。
3)浏览 Drobo 网站,点击以下链接这,如果您遇到困难并且无法弄清楚如何使用交叉编译工具,请查看是否可以联系 Drobo 社区。
4) 请注意,原则上您也可以通过 Drobo 上的 cron 联系本地网络中计算机上的 MTA。SMTP 并不难实现。不过,这当然不如直接在 Drobo 上运行 MTA 那么可靠。
答案2
我能够在 Drobo5n 上发送外发电子邮件,这比我想象的要简单得多。
- 从 Drobo 仪表板安装 Modoboa Mailserver 应用程序。此应用程序将 Postfix 安装为依赖项。
编辑文件 DroboApps/apache/conf/php.ini 以在部分下添加以下三行
[PHP]
:sendmail_path="/mnt/DroboFS/Shares/DroboApps/mailserver/sbin/sendmail -t -i" mail.add_x_header = On mail.log = /mnt/DroboFS/Shares/DroboApps/apache/logs/mail.log
返回 Drobo 仪表板,停止并重新启动 Apache。现在一切就绪。
我创建了一个简单的 php 网页来测试它。
<?php
$to = "[email protected]";
$subj = "this is the subject";
$message = "This is a test email";
$headers = "From: [email protected]";
mail($to, $subj, $message, $headers);
?>
几秒钟后,我就收到了电子邮件。