什么是本地电子邮件以及Ubuntu 16中内置的电子邮件服务是什么?
在阅读此链接时,它说:
crontab命令用于维护单个用户的crontab文件。 默认情况下,命令或脚本(如果有任何产生)的输出将通过电子邮件发送到您的本地电子邮件帐户
当我输入mail
它表示当前没有安装任何名为mail
软件包。
我的问题有三个:
- Ubuntu如何将邮件发送到“本地电子邮件帐户”?
- 我是否需要安装邮件客户端来发送和接收邮件(如果是这样的话)?
- 我怎么知道我的本地电子邮件地址是什么?
我看到整个地方的消息都指的是“消息”其他用户,但我从来没有这样做,也没有检查过“系统邮件”,我会很感激这里的任何见解。
描述如下:
Being able to send emails from command-line from a server is quite useful when you need to generate emails programatically from shell scripts or web applications for example.
mail命令的工作原理
对于那些对邮件命令如何将邮件传递给收件人的人感到好奇,这里有一个简单的解释。
mail命令调用标准的sendmail二进制文件(/ usr / sbin / sendmail),后者又连接到本地MTA以将邮件发送到其目的地。 本地MTA是一个本地运行的smtp服务器,它接受端口25上的邮件。
mail command -> /usr/sbin/sendmail -> local MTA (smtp server) -> recipient MTA (and Inbox)
这意味着像Postfix这样的smtp服务器应该在您打算使用mail命令的机器上运行。 如果没有运行,则会收到错误消息“send-mail:无法打开邮件:25”。
安装Sendmail
在终端中打开终端并键入以下命令。
sudo apt-get install mailutils
sudo apt-get install sendmail
配置Sendmail
安装sendmail后,您应该配置sendmail。 这s little hard. But don
s little hard. But don
担心,我们可以欺骗任何人的电子邮件。
在终端上键入以下命令
sudo gedit /etc/mail/sendmail.mc
它将打开sendmail.mc文件。
例如,您的最后两行如下:
MAILER(`local')dnl MAILER(`smtp')dnl
把这段代码放在这两行之前。
MAILER_DEFINITIONS define('SMART_HOST',`smtp.gmail.com')
现在关闭该文件
现在我们将从.mc文件生成配置文件,因此在终端中键入以下命令。
sudo bash -c 'cd/etc/mail/ && m4 sendmail.mc >sendmai.cf'
现在一切都完成了,尝试使用终端发送邮件
我提供的链接中的一些示例:
-
使用mail命令
运行以下命令,发送电子邮件至someone@example.com。 s选项指定邮件的主题,后跟收件人电子邮件地址。
$ mail -s "Hello World" someone@example.com
- 将邮件发送给本地系统用户
要将邮件发送到本地系统用户,只需使用用户名代替收件人地址
$ mail -s "Hello World" username
- 指定FROM名称和地址
“-a”选项允许指定附加消息的附加标头信息。 它可用于提供“FROM”名称和地址。 这是一个简单的例子
# echo "This is the message body" | mail -s "This is the subject" mail@example.com -aFrom:sender@example.com
a选项基本上添加了额外的标题。 要指定from名称,请使用以下语法。
$ echo "This is the body" | mail -s "Subject" -aFrom:Harry\
请注意,我们必须转义less / great箭头,因为它们对shell提示符具有特殊含义。 当您从某个脚本中发出命令时,您将省略该命令。
资料来源:
什么是邮件?
邮件命令示例
安装和配置邮件