有些时候我们需要在CentOS服务器上发送邮件,例如备份MySQL数据库并发送到指定邮箱,这里我们就说下如何从CentOS的shell命令发送邮件。
检查、安装、启动sendmail
//检查
ps -ef | grep sendmail
//安装
yum install sendmail
//启动
service sendmail start
//开机启动
chkconfig --level 2345 sendmail on
检查并安装mutt
//检查mutt是否安装, 已安装会返回/usr/bin/mutt
# which mutt
//安装mutt
# yum install mutt
配置mutt
1.配置全局mutt, 直接编辑 /etc/Muttrc 文件
2.配置用户级mutt, 复制/etc/Muttrc 到 /当前用户/.muttrc
//为root用户复制.muttrc
# cp /etc/Muttrc /root/.muttrc
配置mutt, 上述两种方法修改方式相同
#设置邮件编码方式
set charset="utf-8"
#自定义发件人信息
set envelope_from=yes #这条默认没有,请手动添加
set use_from=yes
set from=xxx.com@xx.com
set realname="Master Lee"
测试发送邮件
//语法
mutt [-hnpRvxz][-a][-b][-c][-f][-F][-H][-i][-m] [-s][邮件地址]
发送
mutt 1343652445@qq.com -s "测试mutt" -a test.txt < test.txt
echo "邮件正文" | mutt 1343652445@qq.com -s"xxxx" -a test.txt
如果邮件发送错误,查看日志(/var/log/maillog)