通过命令行发送邮件 [root@ProxyServer ~]# mail -s "test" justin@51cto.com dfdafd dfadf fadf EOT [root@ProxyServer ~]# 第一行是输入的命令,-s表示邮件的主题,后面的justin@51cto.com则是邮件的接收人,输入完这行命令后回车,会进入邮件正文的编写,可以输入任何文字,比如上面的三行。当邮件正文输入完成后,需要按CTRL+D结束输入,此时会提示你输入Cc地址,即邮件抄送地址,没有直接回车就完成了邮件
2、使用管道进行邮件发送 [root@ProxyServer ~]# echo "hello,echo"|mail -s "echo" justin@51cto.com
3、使用文件进行邮件发送 [root@ProxyServer ~]# mail -s "password" justin@51cto.com < /etc/passwd
4、使用外部smtp(qq的SMTP)来发送邮件 bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,而通过修改配置文件/etc/mail.rc(/etc/nail.rc)可以使用外部SMTP服务器,可以达到不使用sendmail而用外部的smtp服务器发送邮件的目的。 [root@ProxyServer ~]# vim /etc/mail.rc #文末添加以下 set from=justin@51cto.com set smtp=smtp.51cto.com set smtp-auth-user=justin@51cto.com set smtp-auth-password=51cto set smtp-auth=login [root@ProxyServer ~]# source /etc/mail.rc [root@ProxyServer ~]# mail -s "51cto" 15001*****@139.com < /etc/passwd from:发送的邮件地址(真实地址,我测试时候直接写justin发送邮件失败),对方显示的发件人 smtp:发生的外部smtp服务器的地址 smtp-auth-user:外部smtp服务器认证的用户名 smtp-auth-password:外部smtp服务器认证的用户密码 smtp-auth:邮件认证的方式
5、mail日志在log下 [root@CHINFO3 ~]# cd /var/log/ [root@CHINFO3 log]# cat mail mail/ maillog maillog.1 maillog.2 maillog.3 maillog.4 [root@CHINFO3 log]# cat mail 6、使用sendmail -bp 或者 mailq 可以查看到邮件发送队列,里边会列出有几个邮件等待发送 [root@CHINFO3 mqueue]# mailq /var/spool/mqueue (5 requests) -----Q-ID----- --Size-- -----Q-Time----- ------------Sender/Recipient----------- tB36BqUi005128 1716 Thu Dec 3 14:11 <infa@chinfo3> (Deferred: mx.263.net.: No route to host) <pvbutler@51cto.com> tB21TicN013397 415 Wed Dec 2 09:29 <infa@chinfo3> (Deferred: mx.263.net.: No route to host) <pvbutler@51cto.com> ...... [root@CHINFO3 mqueue]# sendmail -bp /var/spool/mqueue (5 requests) -----Q-ID----- --Size-- -----Q-Time----- ------------Sender/Recipient----------- tB36BqUi005128* 1716 Thu Dec 3 14:11 <infa@chinfo3> (Deferred: mx.263.net.: No route to host) <pvbutler@51cto.com> tB21TicN013397 415 Wed Dec 2 09:29 <infa@chinfo3> (Deferred: mx.263.net.: No route to host) <pvbutler@51cto.com> ......