标签:zabbix报警邮件 附件发送
最近搭建了一个zabbix服务器,但是到邮件报警的时候出问题了,为什么发送老是发送个附件。脚本命令是echo "$3"|mail -s "$2" $1 应该是对着呢。
最后查了好多资料,实验了很多次,发现大致的原因。因为windows和linux的换行符不同导致的。
可以把附件file一下看到:
[root@zabbix ~]# file tcmime.1953.1953.2321.bin
tcmime.1953.1953.2321.bin: UTF-8 Unicode text, with CRLF, LF line terminators
然后file 普通的文本文件
[root@zabbix alertscripts]# file 1.txt
1.txt: UTF-8 Unicode text
使用vim 会显示附件的内容每行后面都有^M 。只要把这个^M去掉,然后发送的话就不会是附件的形式了。去掉^M可以使用dos2unix工具,yum直接下载个就行了。
有了思路然后把脚本修改成了:
#!/bin/sh
echo "$3" > /usr/local/zabbix/share/zabbix/alertscripts/1.txt
dos2unix /usr/local/zabbix/share/zabbix/alertscripts/1.txt
mail -s "$2" $1 < /usr/local/zabbix/share/zabbix/alertscripts/1.txt
然后自己创建个1.txt文件,注意所有者要改为zabbix:zabbix,然后进行测试发送发送的是内容了。
具体应该还有其他更简单解决的方法,说不定配置文件修改下就行,但是我不知道,现在只能这样用了。谁有其他的方法可以给我说下,谢谢了。
本文出自 “你猜我是谁” 博客,请务必保留此出处http://whhhj.blog.51cto.com/9289395/1639784
标签:zabbix报警邮件 附件发送
原文地址:http://whhhj.blog.51cto.com/9289395/1639784