一. 安装Apache、MySQL、PHP
(1)安装MySQL
#tar zxvf mysql-4.1.10.tar.gz –C /usr/local/src
cd /usr/local/src/mysql-4.1.10
# ./configure --prefix=/usr/local/mysql && make && make install   //添加用于启动MySQL 的用户及用户组(如果以前安装过MySQl,用户及用户
组可能已存在)
#useradd mysql
#cd /usr/local/mysql
//修改MySQl 目录的所有权
#chown –R mysql.mysql /usr/local/mysql
#bin/mysql_install_db --user=mysql
修改数据库属主
chown mysql var
bin/mysqld_safe –user=mysql &
vi /etc/rc.local在后面添加上/usr/local/mysql/bin/mysqld_safe --user=mysql让mysql开机启动
#ln –s /usr/local/mysql/bin/* /usr/local/bin/
(2)安装Apache
#tar zxvf httpd-2.2.4.tar.gz –C /usr/local/src
#cd /usr/local/src/httpd-2.2.4
#./configure --prefix=/usr/local/apache --enable-so –enable-write   //编译时加上加载模块参数--enable-so和–enable-write
#make ; make install
#vi /usr/local/apache/conf/httpd.conf      //修改Apache 配置文件,添加ServerName www.yourdomain.com或ServerName或 本机ip
#vi /etc/rc.d/rc.local       // 在rc.local 上加入一行/usr/local/apache/bin/apachectl start, 系统启动时启动Apache 服务。
(3)安装PHP
先安装zlib,freetype,libpng,jpeg 以便于让PHP 支持GD 库( Cacti 的WeatherMap插件必须要GD 库的支持)
1、安装zlib
tar zxvf zlib-1.2.3.tar.gz –C /usr/local/src
cd /usr/local/src/zlib-1.2.3
./configure --prefix=/usr/local/zlib ; make ; make install
2、安装libpng
tar jxvf libpng-1.2.10.tar.bz2 –C /usr/local/src
cd /usr/local/src/libpng-1.2.10
cd scripts/
mv makefile.linux ../makefile
cd ..
make ; make install
注意:这里的makefile 不是用./configure 生成,而是直接从scripts/里拷贝
3、安装freetype
tar jxvf freetype-2.3.4 .tar.bz2 –C /usr/local/src
cd /usr/local/src/freetype-2.3.4
./configure --prefix=/usr/local/freetype
make ; make install
4、安装jpeg
tar zxf jpegsrc-1.v6b.tar.gz –C /usr/local/src
cd /usr/local/src/jpeg-6b/
mkdir /usr/local/libjpeg
mkdir /usr/local/libjpeg/include
mkdir /usr/local/libjpeg/bin
mkdir /usr/local/libjpeg/lib
mkdir /usr/local/libjpeg/man
mkdir /usr/local/libjpeg/man/man1
//可以用mkdir -p /usr/local/libjpeg/man/man1 创建多层目录
./configure --prefix=/usr/local/libjpeg --enable-shared --enable-static
#make && make install
注意:这里configure 一定要带--enable-shared 参数,不然,不会生成共享库
5、安装libxml。RedHat AS 4 默认安装libxml 包,但版本太低,PHP5 需要更高
版本的libxml 包。
# tar jxvf libxml2-2.6.26.tar.bz2 –C /usr/local/src    备注:libxml2-devel也要装(用RPM方式)
cd   /usr/local/src/libxml2-2.6.26
./configure ;make ; make install
6、安装fontconfig (用RPM安装,灰字忽略)扩展包和关联包也装上
tar zxvf fontconfig-2.4.2.tar.gz –C /usr/local/src
cd   /usr/local/src/fontconfig-2.4.2
./configure --prefix=/usr/local/fontconfig --with-freetype-config=/usr/local/freetype/bin/freetype-config
make ; make install
7、安装gd
tar zxvf gd-2.0.32.tar.gz –C /usr/local/src
cd   /usr/local/src/gd-2.0.32
./configure --prefix=/usr/local/libgd --with-png --with-freetype=/usr/local/freetype --with-jpeg=/usr/local/libjpeg
make ; make install
编译时显示以下信息:
** Configuration summary for gd 2.0.32:
Support for PNG library: yes
Support for JPEG library: yes
Support for Freetype 2.x library: yes
Support for Fontconfig library: yes
Support for Xpm library: no
Support for pthreads: yes
8、编辑/etc/ld.so.conf,添加以下几行到此文件中。
/usr/local/zlib/lib
/usr/local/freetype/lib
/usr/local/libjpeg/lib
/usr/local/libgd/lib
并执行ldconfig 命令,使用动态装入器装载找到共享库
9、安装PHP
tar jxvf php-5.2.3.tar.bz2 –C /usr/local/src
cd   /usr/local/src/php-5.2.3
#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-gd=/usr/local/libgd --enable-gd-native-ttf --with-ttf --with-freetype-dir=/usr/local/freetype --with-jpeg-dir=/usr/local/libjpeg --with-png-dir=/usr --with-zlib-dir=/usr/local/zlib --enable-xml --enable-mbstring --enable-sockets
备注:--prefix=/usr/local/php //指定PHP 的安装目录
--with-apxs2=/usr/local/apache2/bin/apxs //支持Apache 模块
--with-mysql=/usr/local/mysql //支持MySQl
--with-gd=/usr/local/libgd //支持GD 库
--enable-gd-native-ttf //激活对本地TrueType 字符串函数的支持
--with-ttf //激活对FreeType 1.x 的支持
--with-freetype-dir=/usr/local/freetype //激活对FreeType 2.x 的支持
--with-jpeg-dir=/usr/local/libjpeg //激活对jpeg-6b 的支持
--with-png-dir //激活对png 的支持
--with-zlib-dir=/usr/local/zlib//激活对zlib 的支持
--enable-mbstring //激活mbstring 模块
--with-mail //支持Mail 函数
--enable-xml //支持XML
--enable-sockets //支持套接字
备注:如果出现configure: error: cannot find output from lex; giving up,从光盘中安装flex及flex包即可解决
#make ; make install
#ln –s /usr/local/php/bin/* /usr/local/bin/
#vi /usr/local/apache/conf/httpd.conf
查找AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
在其下加入AddType application/x-httpd-php .php
         AddType application/x-httpd-php .php3
         AddType application/x-httpd-php .phtml
         AddType application/x-httpd-php-source .phps
修改DirectoryIndex 行,添加index.php
修改为DirectoryIndex index.php index.html inv
#vi /usr/local/apache/htdocs/test.php添加以下内容
<?php
Phpinfo();
?>
# /usr/local/apache/bin/apachectl restart
在浏览器中输入 http://www.yourdomain.com/test.php 进行测试。
三 、安装RRDTool    由于rrdtool-1.2.23 需要一些库文件支持,故需先安装配置支持的环境,然后编译安装。
需要的包:cgilib-0.5.tar.gz、zlib-1.2.3.tar.gz、libpng-1.2.10.tar.bz2、freetype-
2.3.4.tar.bz2、libart_lgpl-2.3.17.tar.gz、rrdtool-1.2.23.tar.gz
tar zxvf cgilib-0.5.tar.gz –C /usr/local/src
(1)cd /usr/local/src/cgilib-0.5
对于0.5版本的cgilib源码部分需做一定的修改:
在 cgi.c 里寻找 #include <malloc.h> ,把那行删掉
修改cgitest.c中116行的错误
116行的代码:printf ("<h3>Cookie "Library" set</h3>\n";
应为代码出错,正确的应是printf ("<h3>Cookie \"Library\" set</h3>\n";
make ; make install
mkdir -p /usr/local/rrdtool/lb/include
cp cgi.h /usr/local/rrdtool/lb/include
mkdir -p /usr/local/rrdtool/lb/lib
cp libcgi.a /usr/local/rrdtool/lb/lib
(2)tar zxvf zlib-1.2.3.tar.gz –C /usr/local/src
cd   /usr/local/src/zlib-1.2.3
./configure --prefix=/usr/local/rrdtool/lb
make ; make install
tar jxvf libpng-1.2.10.tar.bz2 –C /usr/local/src
(3)cd /usr/local/src/libpng-1.2.10
./configure --disable-shared --prefix=/usr/local/rrdtool/lb
make ; make install
tar jxvf freetype-2.3.4.tar.bz2 –C /usr/local/src
(4)cd   /usr/local/src/freetype-2.3.4
./configure --disable-shared --prefix=/usr/local/rrdtool/lb
make ; make install
(5)tar zxvf libart_lgpl-2.3.17.tar.gz 用RPM安装libart_lgpl-devel....和freetype-devel 这个两个包
cd /usr/local/src/libart_lgpl-2.3.17
./configure --disable-shared --prefix=/usr/local/rrdtool/lb
make ; make install
(6)tar jxvf intltool-0.40.6.tar.bz2 –C /usr/local/src
cd   /usr/local/src/intltool-0.40.6
./configure
make ; make install
(7)tar zxvf rrdtool-1.2.23.tar.gz –C /usr/local/src
cd   /usr/local/src/rrdtool-1.2.23
./configure --prefix=/uar/local/rrdtool --disable-tcl && make && make install
ln –s /usr/local/rrdtool/bin/* /usr/local/bin/ //完成后建立符号连接
cp /usr/local/lib/libpng.so.0 /usr/lib/ 这步必须有,否则报错找不到此文件。
四 . 安装net-snmp
#tar zxvf net-snmp-5.2.4.tar.gz –C /usr/local/src
#cd /usr/local/src/net-snmp-5.2.4
#./configure --prefix=/usr/local/net-snmp --enable-developer
#make ; make install
#ln –s /usr/local/net-snmp/bin/* /usr/local/bin/
#cp EXAMPLE.conf /usr/local/net-snmp/share/snmp/snmpd.conf
修改/usr/local/net-snmp/share/snmp/snmpd.conf文件的61和62行,设置可以访问改SNMP的网段以及community名称。
egg:
com2sec local localhost public
com2sec mynetwork 192.168.100.0/24 public
#/usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf
启动SNMP 服务
#vi /etc/rc.d/rc.local
//在rc.local 上加入一行/usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf 系统启动时启动SNMP服务。
五 . 安装Cacti    Cacti 官方网站:www.cacti.net/
#tar zxvf cacti-0.8.6j.tar.gz –C /usr/local/src
#mv /usr/local/src/cacti-0.8.6j /usr/loca/apache/htdocs/cacti
#vi /usr/local/apache/htdocs/cacti/include/config.php
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "cacti";
//添加cacti 用户
#useradd cacti
//将rra 目录的所有权给cacti 用户
#chown –R cacti /usr/loca/apache/htdocs/cacti/rra
//修改cacti 目录所属组
# chgrp –R cacti /usr/loca/apache/htdocs/cacti
//添加cron 任务
#crontab –e
*/5 * * * * /usr/local/bin/php /usr/local/apache/htdocs/cacti/poller.php > /dev/null 2>&1
六 . 安装Cactid
Cacti 的安装需要以下支持:
net-snmp-devel (需要编译安装net-snmp 时添加--enable-developer 选项)
mysql mysql-devel (mysql 源文件编译安装后默认支持)
openssl-devel (Redhat 默认安装)
#tar zxvf cacti-cactid-0.8.6i.tar.gz –C /usr/local/src
#cd /usr/local/src/cacti-cactid-0.8.6i
#./configure --with-mysql=/usr/local/mysql --with-snmp=/usr/local/net-snmp
#make ; make install //这时你将在此目录下看到多出了cactid、cactid.conf 两个文件
#mkdir /usr/local/cactid
#cp cactid cactid.conf /usr/local/cactid
#vi /usr/local/cactid/cactid.conf //修改cactid 配置文件
DB_Host 127.0.0.1或者localhost
DB_Database cacti
DB_User cacti
DB_Pass cacti
七 .   mysql数据库配置
#mysql –uroot –p或者/usr/local/bin/mysql –uroot (密码时空,直接回车,这个步骤最容易出现错误,最有可能的是你设置的权限)回头查看这两个修改MySQl 目录的所有权;修改数据库属主。
Password:(这里密码为空)
mysql> create database cacti;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on cacti.* to root;
Query OK, 0 rows affected (0.00 sec)
mysql> grant all on cacti.* to root@localhost;
Query OK, 0 rows affected (0.00 sec)
mysql> grant all on cacti.* to cacti;
Query OK, 0 rows affected (0.00 sec)
mysql> grant all on cacti.* to cacti@localhost;
Query OK, 0 rows affected (0.00 sec)
mysql> set password for cacti@localhost=password('XXX');
Query OK, 0 rows affected (0.00 sec)
#cd /usr/local/apache/htdocs/cacti
#mysql –uroot –p cacti < cacti.sql
Password:(这里密码为空)
补充:#ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.14.0.0 /usr/lib/libmysqlclient.so.14
#ldconfig
这两句要加上,否则系统无法找到libmysqlclient.so.14库
chmod 777 /usr/local/apache/htdocs/cacti/log
chmod 777 /usr/local/apache/htdocs/cacti/rra
八.   完成cacti 的安装
1、在浏览器中输入:http://ip/cacti/    默认用户名:admin 密码:admin
设置cacti用到的命令路径
snmpwalk Binary Path       /usr/local/bin/snmpwalk
snmpget Binary Path       /usr/local/bin/snmpget
RRDTool Binary Path       /usr/localbin/rrdtool
PHP Binary Path             /usr/local/bin/php
Cacti Log File Path       /usr/local/apache/htdocs/cacti/log/cacti.log
Cactid Poller File Path    /usr/local/cactid/cactid

备注:在第一此轮询的时候,如果不出现任何数据,此时可以查看一下cacti这个文件夹的权限,其次rra这个文件夹里面有没有东西,其权限是不是cacti,也可以执行这个命令手动轮询 php /usr/local/apache/htdocs/cacti/poller.php --force
也可以不用安装这些图像处理的源码包,安装系统的时候差不多都安装了,其次就是安装一下它们的升级包--devel---,还有一个flex和ncurses-devel-5.5-24.20060715.i386.rpm,其余的用源码包,这样不会那么麻烦,也肯定能够成功。

转载于:https://blog.51cto.com/wenchylinux/343142

AS4下搭建cacti相关推荐

  1. linux cacti 搭建,Linux下搭建Cacti详述

    Cacti是一个开源的监控软件,随着网络架构的日益复杂化.作为开源的监控软件可以逐渐的省掉开发的成本,下面简单的介绍下Cacti在Linux服务器上面的搭建的过程. 搭建Cacti所需要的LAMP环境 ...

  2. linux下搭建cacti监控

    一.cacti 监控软件简介         1. cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存         和更新数据,当用户需要查看数 ...

  3. linux cacti 搭建,linux下搭建cacti监控(示例代码)

    一.cacti 监控软件简介 1. cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存         和更新数据,当用户需要查看数据的时候用rrd ...

  4. zentao怎么卸载linux,linux下搭建ZenTaoPMS项目管理软件

    linux下搭建ZenTaoPMS项目管理软件 简介: 禅道项目管理软件(ZenTaoPMS)是一款国产的,基于LGPL协议,开源免费的项目管理软件,它集产品管理.项目管理.测试管理于一体,同时还包含 ...

  5. linux系统搭建论坛,在Linux平台下搭建discuz论坛

    在Linux平台下搭建discuz论坛 [日期:2007-11-08] 来源:Linux公社 作者:Linuxidc [字体:大 中 小] 环境 linux AS4 2.6.9 1.安装MySQL 使 ...

  6. centos7 下搭建git服务器

    总的来说,搭建git和svn形式差不多 1.首先要在服务器安装git环境,创建用户密码和仓库等 2.然后个人主机(基本是window)安装git客户端 3.将个人主机客户端的秘钥写到git服务器的一个 ...

  7. Linux (CentOS 7 )下搭建局域网SVN服务器+SVN权限配置

    准备 公司内部需要配置局域网SVN,需要在在内部虚拟机服务器搭建,搭建过程做个记录,供参考. 注:如果条件允许,尽量在windows下搭建svn服务器,很省事,尤其是权限配置非常方便又易懂,效果相同 ...

  8. 如何在Mac环境下搭建svn服务器端环境

    为什么80%的码农都做不了架构师?>>>    在Windows环境中,我们一般使用TortoiseSVN来搭建svn环境.在Mac环境下,由于Mac自带了svn的服务器端和客户端功 ...

  9. Linux下搭建Lotus Domino集群

    Linux下搭建Lotus Domino 集群 本文内容是Linux平台下Lotus Domino服务器部署案例(http://chenguang.blog.51cto.com/350944/1334 ...

最新文章

  1. “ compiler-rt”运行时runtime库
  2. Windows10安装Mysql5.7.19.0 msi 版本报错
  3. Apache Kylin v2.5.0正式发布,开源分布式分析引擎
  4. apache起步命令加-k参数和不加的区别
  5. 计算机基础说课 word,计算机基础说课稿
  6. mybatis源码阅读(二):mybatis初始化上
  7. YUV422格式信号格式(以备学习之用)
  8. openssl 1.1.1编译语句
  9. comboBox绑定对象数组 c# 1614065159
  10. 如何使用Entity Framework在Always Encrypted列上模拟通配符搜索
  11. c++类与对象(1)——构造,复制构造函数
  12. freemarker生成java代码,freeMarker之根据模板生成JAVA代码示例
  13. 古墓丽影暗影显卡测试软件,ROG STRIX RTX 2060 S显卡测试 就是这么能打!
  14. 地址栏中的#是什么意思
  15. 小程序中设置全屏背景图
  16. Coursera | Andrew Ng (01-week-2-2.6)—更多导数的例子
  17. 开源软件新时代:55个经典开源Windows工具
  18. 卡在返回驾驶舱–孤岛危机
  19. 追悼伟大的科学家史蒂芬·霍金,他留下的预言能实现吗 ?
  20. 方向导数的几何通俗解释

热门文章

  1. 纯CSS实现文字一行居中,多行左对齐的方法
  2. AFNetworking 取消请求
  3. 【shell 大系】Linux Shell常用技巧
  4. 不自动切换eclipse视图
  5. 'ModelOptions' object has no attribute 'get_field_names
  6. 浏览器上实现数据的本地存储・小结
  7. appender log4j 扩展_java-如何在log4j2中创建自定义Appender?
  8. linux怎么重命名多个文件,在Linux中如何一次重命名多个文件详解
  9. php随机生成器加密,php生成随机密码的几种方法
  10. 合并单元格两行_28 HTML5标签学习——table单元格的合并