业务背景:
在前几日设置了自动将生产机DB2备份数据复制到另一台文件服务器备份【参考:“利用scp实现数据自动远程备份”】,在此基础上再进一步将备份执行情况通过邮件发送给相关人员,以及时了解备份计划执行情况。
解决方案:
下载&安装mailx-12.4
#wget ftp://ftp.tw.freebsd.org/pub/FreeBSD/FreeBSD/distfiles/mailx-12.4.tar.bz2
#tar jxvf mailx-12.4.tar.bz2
#cd mailx-12.4
#make && make install UCBINSTALL=/usr/bin/install
配置/etc/nail.rc
先注册一个免费邮箱,且提供SMTP服务;然后编辑/etc/nail.rc文件,在文件最后追加如下内容:
#vim /etc/nail.rc
set from=[email protected](前面注册的免费邮箱)
set smtp=smtp.sina.com(smtp服务地址)
set smtp-auth-user=邮箱账号
set smtp-auth-password=邮箱密码
set smtp-auth=login
编写脚本
脚本内容如下,保存在/scripts/sendmail.sh中
#!/bin/bash
# 说明:
# 将backup.log内容邮件发给相关人员
# root权限下执行crontab -e
# 输入:00 08 * * * /scripts/sendmail.sh
# 版本历史:
# v1.0 2014/09/13 Matt.Li 初版
#source /etc/profile
tail -10 /scripts/backup.log | /usr/local/bin/mailx -s "提醒:文件备份日志,请检查。" [email protected],[email protected]
设置定时执行
$ su root
# chmod 700 /scripts/sendmail.sh
# crontab -e
然后输入如下内容
00 08 * * * /scripts/sendmail.sh