菜蜂 发表于 2015-9-7 13:37:32

Cacti+Nagios整合中在安装NPC支持--json时出错!

    近阵子,玩起了Nagios+Cacti的整合,发现按照教程来搭建时,却卡在Json这里了!
  教程地址:http://bbs.linuxtone.org/thread-17617-1-1.html
  (补充:在安装Ndoutils时,里面只有#make,所以得加上安装#make install)
  

一、安装Json流程如下:
  1.下载源文件包:



#wget http://pkgs.fedoraproject.org/repo/pkgs/php-pecl-json/json-1.2.1.tgz/d8904d2f004ceec85eeacf524cd25539/json-1.2.1.tgz
  
  2.解压



#tar -zxvfjson-1.2.1.tgz
  
  3.进入目录准备编译与安装



#cd json-1.2.1.tgz
  
  4.初始化PHP环境



#phpize
  报错了:phpize commend not found
  PHP JSON安装之前需要安装phpize,这个可以在yum中安装
    #yum -y install php-devel
  如果还不能完成PHP JSON安装,说明你的编译工具有问题,安装一下就可以了
    #yum -y install autoconf
    #yum -y install automake
    #yum -y install libtool
  运行phpize
  5.编译检查(没提示出错就正常了)



#./configure
  
  6.编译和安装



#make
#make install
  
  7.查看PHP JSON安装有没有成功



#find /usr/ -name '*json.so'
./usr/lib/php/modules/json.so
  (如果出现有这个,那就是正确安装好了!)
  
  8.修改php.ini



#vim /etc/php.d/json.ini
  添加内容如下:
  extension=json.so
  
  9.重启http服务生效和最后检查



#service httpd restart
#php -m |grep 'json'
  json
  

二、发现的错误!
  在最后的检查的时候,发现出现如下错误,在网上找了很多方法,都没有类似的错误,后来在一个技术群里面有同志碰到了!非常感谢!!!
  我们在检查的时候运行php -m来查看加载了那些模块.



#php -m |grep 'json'
PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/json.so' - /usr/lib/php/modules/json.so: undefined symbol: ZVAL_DELREF in Unknown on line 0
  原因是:重写了json, 所以出错
  我的解决方法:



#yum reinstall php-common
  单独的php-common包下载地址:http://pkgs.org/centos-6-rhel-6/centos-rhel-i386/php-common-5.3.3-3.el6_2.8.i686.rpm.html  
  当然,如果比较笨的办法呢,就直接全部PHP来reinstall (重装)



#yum reinstall php-*
  
  非常感谢帮忙的大神!
  参考地址:http://4560825.blog.iyunv.com/4550825/849344
  
页: [1]
查看完整版本: Cacti+Nagios整合中在安装NPC支持--json时出错!