作者:田逸(sery@163.com
虽然一直不喜欢移动,但受人之托,勉为其难帮他调试了一下。过程很简单,但其中的技巧却值得拿出来分享,于是就有了这个文章。
问题描述:
(1)以web方式查看nagios监控状态,显示故障,却收不到报警短信。
(2)系统日志出现“Warning: Attempting to execute the command "/usr/local/fetion/fetion --mobile=13660600600 --pwd=little228 --to=13909088009  --msg-utf8="[linux1-CRITICAL] CHECK_NRPE: Socket timeout after 10 seconds. (20:51:12)"" resulted in a return code of 127.  Make sure the script or binary you are trying to execute actually exists...”。
情况了解:
该系统管理员说,他用手工方式执行飞信发短信没问题,再切换成用户nagios,也没问题。
处理过程:
(1)登陆该服务器,查看系统日志和nagios日志,果然如此。
(2)查看飞信所在的目录,发现已经被系统管理员设置成777了。
(3)先修改一下他的/etc/sudoers文件,用visudo进去,新增一行“nagios ALL=NOPASSWD:/usr/local/feiton/feiton”保存。
(4)切换到nagios用户:su - nagios
(5)执行sudo /usr/local/feiton/feiton ,报无lib*.so文件。
(6)这些文件在/usr/local/feiton里呆着呢,先看看/usr/lib里有没有这些。
(7)切换回root,查一下/usr/lib目录,果然没有这些lib*.so。
(8)从这个目录,把这些个lib*.so统统拷贝到/usr/lib目录。
(9)再切换到nagios用户执行sudo /usr/local/feiton/feiton 哈哈,没报错了。
(10)停止一个监控机上的服务,片刻,就发短信了。
对于监控短信报警,还是建议使用短信接口,不行该死的飞信,不能发其他运营商的手机短信。
[smartcounter:1]