什么是本地电子邮件以及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'

现在一切都完成了,尝试使用终端发送邮件

我提供的链接中的一些示例:

  1. 使用mail命令

    运行以下命令,发送电子邮件至someone@example.com。 s选项指定邮件的主题,后跟收件人电子邮件地址。

$ mail -s "Hello World" someone@example.com

  1. 将邮件发送给本地系统用户

要将邮件发送到本地系统用户,只需使用用户名代替收件人地址

$ mail -s "Hello World" username

  1. 指定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\ someone@example.com

请注意,我们必须转义less / great箭头,因为它们对shell提示符具有特殊含义。 当您从某个脚本中发出命令时,您将省略该命令。

资料来源:

什么是邮件?

邮件命令示例

安装和配置邮件