前面写过一篇【Linux下利用邮箱备份网站数据】的文章,利用sendmail+mutt,定期备份网站数据库并发送到各大邮箱,实现永久保存(测试过139邮箱可以)。若担心附件会丢失,在此文中你可以搞两个邮箱来备份,邮箱A发给邮箱B,双重保障,另外还可以把收件箱做下设置= = 自动转发所有邮件到C邮箱,三重保障。。。
写上一篇文章的时候发现的,本打算加入邮箱通知功能,无意见发现无效,随即发现,我的服务器们被各种邮箱拉黑了= =。
所以只好百度了,随即发现一种更爽的方法,相信大家能猜到是用smtp,能用多久有待测试了,有点担心邮箱们会把我连smtp的IP也封掉。
MAILX
使用mailx工具,用此神器,可以直接把你的mutt和sendmail卸了~ 还不需要跑个服务。
安装就不说了,自己网上百度吧,centos的话最简单,直接yum -y install mailx
mailx利用smtp发送邮件,配置方式在/etc/mail.rc
文件中底部加入:
1 2 3 4 5 |
set from=邮箱 set smtp=smtp.139.com set smtp-auth-user=邮箱 set smtp-auth-password=密码 set smtp-auth=login |
这样就配置好了~ 记得发送邮箱那边要打开smtp。 基本所有邮箱都可以了。
配置好不需要重启,直接可以用!
用此语句:echo "hello" | mailx -v -s "hi" 你的邮箱
立马可以测试。
注意-v参数在写到sh里时可以去掉,那个是输出smtp内容用的,测试时可以看。
需要加附件(废话)也很简单,-a参数即可,记得,mutt有-c,mailx没有,所以收件地址必须在最后。
对比下mutt方式和mailx方式吧
echo “xx数据库定时邮箱备份” | mutt -e “my_hdr from:TXY<txy@xx.com>” -a /home/backup/$DataBakName -s “xx服务器数据库备份” -c $MAIL_TO
echo “xx数据库定时邮箱备份” | mutt -a /home/backup/$DataBakName -s “xx服务器数据库备份” $MAIL_TO
本人自用的方式是用139邮箱发给139邮箱,原因是比较稳定,自己发给自己,另外移动有短信提示功能,但愿移动的邮箱能一直做下去= =