在做 MHA 故障转移告警时出现的错误
故障可以自动转移,但是邮件不能成功发送,
所以第一时间查看 日志:/var/log/masterha/manager.log
日志发送邮件如下:
出现问题的原因
“/usr/bin/perl^M:没有那个文件或目录”
这个问题大多数是因为文件在Windows下编辑过。
Windows下,每一行的结尾是\n\r,而在linux下文件的结尾是\n。用cat -A filename时你可以看到这个\r字符被显示为^M。
解决方法
sed -i 's/\r$//' send_report
cat -A send_report
再次查看,还会有 M乱码,说明你的脚本里有汉字,此 perl语言脚本是不识别汉字的。
把汉字都删了,再查看
总结
1、要么 有汉字
2、要么 双系统的容易产生的问题。