因为需要cacti的图形化界面,于是安装了一遍,没想到折腾了快一个星期,现在贴出主要过程和遇到的主要问题。
跟大部分安装文档类似,我就写个大概,我也不能比其他人写的更好了,就不转载了,有兴趣的自己搜一下。 安装apache,mysql,和php,尤其注意php的包要装全。php-snmp php-pdo,php-mysql,php-ldap,php-common,php-json,php-xml,php-gd,尤其注意版本要和php主版本一致。我就吃亏了。
创建用户cacti
安装cacti #tar zxvf cacti-0.8.8.tar.gz
#mv cacti-0.8.8/* /usr/local/apache2/htdocs/
#chown -R cacti /usr/local/apache2/htdocs/rra
#chown -R cacti /usr/local/apache2/htdocs
#chgrp -R cacti /usr/local/apache2/htdocs/
导入数据库 # mysql -u root -p
Enter password:
mysql> create database cacti;
mysql> grant all on cacti.* to root@localhost ;
mysql> grant all on cacti.* to cacti@localhost identified by 'cacti';
mysql> flush privileges;
mysql>exit;
cd /usr/local/apache2/htdocs/cacti
#mysql -u root -p cacti < cacti.sql
password:
配置config.php ,路径/usr/local/apache2/htdocs/cacti/include
$database_type = "mysql";
$database_default = "cacti";
$database_hostname ="127.0.0.1";
$database_username = "cacti";
$database_password = "cacti";
$url_path = "/cacti/";
赋予权限给rra/ log/
chown -R cacti rra/ log/
添加日程
# su – cacti
# crontab –e
*/5 * * * * /usr/local/bin/php /usr/local/apache/htdocs/cacti/poller.php > /dev/null 2>&1
这时候http://serverip/cacti 应该可以访问了。
遇到的主要问题,
1.显示无法连接mysql
解决方法编辑配置文件config.php
$database_hostname="localhost" 改为$database_hostname='127.0.0.1'
应该是没有解析出来。
2.显示php扩展缺失 。The following PHP extensions are missing:
* sockets
解决方法重新编译php 使用--enable-sockets 选项
解决了第二个问题,出现了第三个更棘手的问题
3.访问http://ip/cacti显示空白页面,也没有错误提示。
出现这个问题我查了很多的文档,检查了无数个地方,有些帖子说要安装php的依赖包,我尝试了,但都不管用。我是从rpm下载的站点分别下的,当时发现有的是5.3.3_2.8的有的是5.3.3_1.3的,是不能混着安装的,也是装不上的,这给我一个思路,是不是我的php跟其他依赖包不兼容?检查一下发现我的是5.4.13的,但是装的都是for 5.3.3的。卸载了之后,(需要先卸载其他的包,然后卸载主程序)重新安装5.3.15的php主程序后,发现空白页面的问题没有了,出现了第四个问题。
4.打开cacti主页,立即跳转到http://ip/cactiinstall 显示页面无法找到。
从其他网站上没发现同样的问题,只有类似的,检查了很多次配置文件,也没有发现异常。仔细看了配置文件config.php,发现$url_path='/cacti', 在配置文档里,是$url_path='/cacti/',就差一个/, 结果大不同!
希望能被后来的人所借鉴,少走弯路。