仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 630|回复: 8
打印 上一主题 下一主题

[CentOS(社区)] 带来一篇mutt+msmtp+inotify 监控文件发送邮件

[复制链接]
逍遥一派 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-14 20:45:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
欢迎大家来到仓酷云论坛!
情况需求:inotify请求体系内核版本为2.6.13以上

请求redhat体系必需为5.0以上



软件需求:inotify-tools-3.14.tar.gz

mutt-1.5.21.tar.gz

msmtp-1.4.30.tar.bz2




完成成果:通用监控指定目次中文件的增减改等操作,并把操作的举措发到指定邮箱告诉



步调:

1.装置inotify

wgethttp://cloud.github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz
tar-zxvfinotify-tools-3.14.tar.gz
cdinotify-tools-3.14
./configure--prefix=/usr/local/inotify
make&&makeinstall

装置完成后生成/usr/local/inotify/bin/inotifywait/usr/local/inotify/bin/inotifywatch敕令,inotifywait用来监控文件体系的更改,inotifywatch用来统计更改文件体系事宜。


Inotifywait参数
-m--monitor##一直监控
-r--recursive##递归
-q--quiet##打印监控事宜
-e--event##指出要监控的事宜,有:modify,delete,create,attrib
--timefmt##时光格局
--format##变更文件的具体信息

具体参数请检查http://muxu303.blog.163.com/blog/static/512801920121204449935/



inotify测试
应用inotifywait-mrq--timefmt%d/%m/%y%H:%M--format%T%w%e-emodify,delete,create,attrib监控/data目次,然后在/data下创立一个文件,看看能否有变更
/usr/local/inotify/bin/inotifywait-mrq--timefmt%d/%m/%y%H:%M--format%T%w%e-emodify,delete,create,attrib/data
16/02/1311:01/data/CREATE
16/02/1311:01/data/MODIFY
echo"notifydatatest...">/data/test.bat

假如测试掉败,请检查体系的内核版本(unameCa)能否相符请求

2.装置mutt+msmtp

[root@mymail~]#tar-jxvfmsmtp-1.4.30.tar.bz2
[root@mymail~]#cdmsmtp-1.4.30
[root@mymailmsmtp-1.4.30]#./configure--prefix=/usr/local/msmtp
[root@mymailmsmtp-1.4.30]#make
[root@mymailmsmtp-1.4.30]#makeinstall
[root@mymail~]#tar-zxvfmutt-1.5.21.tar.gz
[root@mymail~]#cdmutt-1.5.21
[root@mymailmutt-1.5.21]#./configure--prefix=/usr/local/mutt
[root@mymailmutt-1.5.21]#make
[root@mymailmutt-1.5.21]#makeinstall

Msmtp+mutt设置装备摆设

[root@mymailmutt-1.5.21]#mkdir-p/usr/local/msmtp/etc
[root@mymailmutt-1.5.21]#vi/root/.msmtprc
hostmail.yylog.org#smtp地址
tlsoff
authplain
fromzbill@yylog.org
userzbill
password123456789
[root@mymailmutt-1.5.21]#vi/root/.muttrc
setsendmail="/usr/local/msmtp/bin/msmtp"#指定msmtp装置地位
setuse_from=yes
setfrom=zbill@yylog.org
setenvelope_from=yes
[root@mymailmutt-1.5.21]#vi/usr/local/msmtp/etc/msmtprc
defaults
accountzbill
hostmail.yylog.org
fromzbill@yylog.org
authlogin
port25
tlsoff
userzbill@yylog.org
password123456789
accountdefault:zbill
logfile/usr/local/msmtp/log/msmtp.log
[root@mymailmutt-1.5.21]#mkdir-p/usr/local/msmtp/log
[root@mymailmutt-1.5.21]#echosetsendmail="/usr/local/msmtp/bin/msmtp">>/etc/Muttrc
[root@mymailmutt-1.5.21]#echo"setuse_from=yes">>/etc/Muttrc
[root@mymailmutt-1.5.21]#echosetrealname="zbill@yylog.org">>/etc/Muttrc
[root@mymailmutt-1.5.21]#echoseteditor="vim">>/etc/Muttrc
[root@mymailmutt-1.5.21]#ln-s/usr/local/msmtp/bin/msmtp/usr/bin

邮件发送测试

发明发送报错



多是选择的发送邮箱的邮件办事器有成绩,换成smtp.163.com后测试发送正常

[root@mymailmutt-1.5.21]#/usr/local/mutt/bin/mutt-s"test"-c458162532@qq.com</.sh/1.sh
发明未收到邮件,检查体系版本cat/etc/issueredhat4.6,因而换了台redhat5.2的体系测试发送胜利了,所以要留意体系版本成绩

3.设置装备摆设mutt+msmtp+inotify

编写监控剧本

Vimonitor.sh

#!/bin/bash

clear

src=/root/a//监控的目次

/usr/local/inotify/bin/inotifywait-m-r-d-o/tmp/monitor.log--timefmt%F%T--format%T%w%f%e-emodify,attrib,move,close_write,create,delete,delete_self$src






编写发送邮件剧本

Visendmail.sh

#!/bin/bash

clear

path_f=/tmp/monitor.log

email=458162532@qq.com



functionmutt_send()

{

/usr/local/bin/mutt-s"WARN"-c$email<$path_f

}



if[-s$path_f];then

echo"mailsend.......";sleep1

/usr/local/bin/mutt-s"WARN"-c$email<$path_f

fi

cat/dev/null>$path_f//发完邮件有对文件停止清空







(在履行剧本./sendmail.sh的时刻会有报错:-bash:./file.sh:/bin/bash^M:badinterpreter:Nosuchfileordirectory

毛病缘由很有多是你的剧本文件是DOS格局的,即每行的行尾以
来标识,ASCII码分离是0x0D,0x0A.

检查剧本格局:setff?会显示fileformat=dos应用setff=unix修正格局从新履行便可)




后台运转监控剧本

nohup/bin/bash/root/monitor.sh&



把发送邮件的剧本参加筹划

CrontabCe

*/5****/bin/bash/root/sendmail.sh

保留加入偏重启办事

/etc/init.d/crondrestart






测试:

[root@localhost~]#cd/root/a

[root@localhosta]#ls

123abcrf

[root@localhosta]#rm-f*

[root@localhosta]#cat/tmp/monitor.log

2013-07-1904:40:04/root/a/123DELETE

2013-07-1904:40:04/root/a/abcDELETE

2013-07-1904:40:04/root/a/rfDELETE

[root@localhosta]#cd

[root@localhost~]#./sendmail.sh

mailsend.......

[root@localhost~]#cat/tmp/monitor.log

[root@localhost~]#






欢迎大家来到仓酷云论坛!
山那边是海 该用户已被删除
沙发
发表于 2015-1-16 22:31:45 | 只看该作者

带来一篇mutt+msmtp+inotify 监控文件发送邮件

写学习日记,这是学习历程的见证,同时我坚持认为是增强学习信念的法宝。
乐观 该用户已被删除
板凳
发表于 2015-1-25 19:46:36 | 只看该作者
然我们对Linux的学习首先是通过对它的产生,发展,到今天仍然在不断完善开始的。
莫相离 该用户已被删除
地板
发表于 2015-2-4 01:08:59 | 只看该作者
硬盘安装及光盘安装,清楚了解安装Linux应注意的有关问题,如安装Linux应在最后一个分区内,至少分二个分区。
不帅 该用户已被删除
5#
发表于 2015-2-9 10:32:53 | 只看该作者
有疑问前,知识学习前,先用搜索。
6#
发表于 2015-2-27 09:05:40 | 只看该作者
熟悉操作是日常学习Linux中的三大法宝。以下是作者学习Linux的一些个人经验,供参考:
飘灵儿 该用户已被删除
7#
发表于 2015-3-9 07:59:26 | 只看该作者
当然你不需搭建所有服务,可以慢慢来。自己多动手,不要非等着别人帮你解决问题。
简单生活 该用户已被删除
8#
发表于 2015-3-17 00:09:11 | 只看该作者
Linux操作系统这个名词记得在很早以前就听过,但当时并不知道具体是什么样的操作系统,只知道是一个与嵌入式密切相关的操作系统。
逍遥一派 该用户已被删除
9#
 楼主| 发表于 2015-3-23 12:00:04 | 只看该作者
以前觉得Linux就跟dos一样,全是用命令窗口,相对于窗口界面来说多麻烦呀。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2025-1-24 03:55

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表