一:下載下傳需要的軟體(可能有重複,需自己整理)
mkdir -pv /home/software
cd /home/software
wget http://blog.s135.com/soft/linux/nginx_php/php/php-5.2.14.tar.gz
wgethttp://ftp.gnu.org/pub/gnu/gettext/gettext-0.18.1.1.tar.gz
wget http://ftp.gnu.org/pub/gnu/gettext/gettext-0.18.1.1.tar.gz
wget http://ftp.gnu.org/gnu/gettext/gettext-0.18.1.1.tar.gz
wget http://mirrors.usc.edu/pub/gnu/gettext/gettext-0.18.1.1.tar.gz
wget http://www.infodrom.org/projects/cgilib/download/cgilib-0.5.tar.gz
wget http://cairographics.org/releases/cairo-1.8.10.tar.gz
wget http://cairographics.org/releases/cairo-1.4.6.tar.gz
wget http://cairographics.org/releases/pixman-0.18.2.tar.gz
wget http://ftp.se.debian.org/pub/gnome/sources/pango/1.28/pango-1.28.1.tar.gz
wget tp://ftp.gtk.org/pub/glib/2.25/glib-2.25.14.tar.gz
wget ftp://ftp.gtk.org/pub/glib/2.25/glib-2.25.14.tar.gz
wget http://www.idcly.cn/download/rrdtool-1.4.2.tar.tar
wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.2.tar.gz
wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.3.1.tar.gz
wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.3.8.tar.gz
wget http://lists.ee.ethz.ch/p/cgilib-0.5.1.tar.gz
wget http://gd.tuwien.ac.at/db/mysql/Downloads/MySQL-5.1/mysql-5.1.50.tar.gz
wget http://hn-xl.com/zlib-1.2.5.tar.tar
wget http://www.idcly.cn/download/rrdtool-1.4.4.tar.tar
wget http://www.xmlsoft.org/sources/libxml2-devel-2.7.7-1.x86_64.rpm
wget http://www.xmlsoft.org/sources/libxml2-2.7.7.tar.gz
wget http://nchc.dl.sourceforge.net/project/libpng/01-libpng-master/1.4.3/libpng-1.4.3.tar.gz
wget http://ftp.se.debian.org/pub/gnome/sources/libart_lgpl/2.3/libart_lgpl-2.3.21.tar.gz
wget ftp://ftp.di.uminho.pt/pub/ctan/support/ghostscript/3rdparty/jpegsrc.v7.tar.gz
wget http://ftp.se.debian.org/pub/gnome/sources/intltool/0.40/intltool-0.40.6.tar.gz
wget http://www.libgd.org/releases/gd-2.0.35.tar.gz
wget http://nongnu.askapache.com/freetype/freetype-2.3.5.tar.gz
wget http://www.fontconfig.org/release/fontconfig-2.8.0.tar.gz
wget http://www.infodrom.org/projects/cgilib/download/cgilib-0.7.tar.gz
wget http://sourceforge.net/projects/net-snmp/files/net-snmp/5.5/net-snmp-5.5.tar.gz/download
wget http://www.cacti.net/downloads/cactid/cacti-cactid-0.8.6k.tar.gz
wget http://www.cacti.net/downloads/cacti-0.8.7e.tar.gz
wget http://apache.etoak.com/httpd/httpd-2.2.16.tar.gz
wget http://apache.freelamp.com/httpd/httpd-2.2.16.tar.gz
wget http://mysql.ntu.edu.tw/Downloads/MySQL-5.1/mysql-5.1.50.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/mysql/mysql-5.5.3-m3.tar.gz
http://www.cacti.net/downloads/spine/cacti-spine-0.8.7e.tar.gz
二:安裝
2.1 mysql
安裝mysql
groupadd mysql
useradd -g mysql mysql
tar xvf mysql-5.1.50.tar.gz
cd mysql-5.1.50
./configure --prefix=/usr/local/mysql --sysconfdir=/etc
make
make install
cp support-files/my-medium.cnf /etc/my.cnf
//主配置檔案.
cd /usr/local/mysql
chown -R mysql .
chgrp -R mysql .
//以上兩行改變目前檔案夾内所有檔案的屬主和屬組.
bin/mysql_install_db --user=mysql //使用賬号來初始化資料庫
chown -R mysql:mysql /usr/local/mysql/var/mysql
bin/mysqld_safe --user=mysql &
echo "/usr/loca/mysql/bin/mysqld_safe --user=mysql & " >> /etc/rc.local
2.2 Apache
tar xvf httpd-2.2.16.tar.gz
cd httpd-2.2.16
//在我的環境中已經存在并符合要求,于是沒有安裝
6) 安裝fontconfig
tar xvf fontconfig-2.8.0.tar.gz
cd fontconfig-2.8.0
./configure --prefix=/usr/local/fontconfig --with-freetype-config=/usr/local/freetype/bin/freetype-config
cd ../
gettext
tar xvf gettext-0.18.1.1.tar.gz
cd gettext-0.18.1.1
./configure
make && make install
7) 安裝GD
cd gd-2.0.35
./configure --prefix=/usr/local/libgd --with-png --with-freetype=/usr/local/freetype --with-jpeg=/usr/local/libjpeg
8) 編輯 /etc/ld.so.conf
echo "/usr/local/zlib/lib" >> /etc/ld.so.conf
echo "//usr/local/freetype/lib" >> /etc/ld.so.conf
echo "///usr/local/libjpeg/lib" >> /etc/ld.so.conf
echo "//usr/local/libgd/lib" >> /etc/ld.so.conf
ldconfig
9) 安裝PHP
tar xvf php-5.2.14.tar.gz
cd php-5.2.14
./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-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
ln -s /usr/local/php/bin/* /usr/local/bin
配置 httpd.conf
//查找AddType application/x-compress .Z 後面添加如下幾行
“AddType application/x-gzip .gz .tgz”
“AddType application/x-httpd-php .php”
“AddType p_w_picpath/x-icon .ico”
//修改DirectoryIndex 行,添加index.php
“DirectoryIndex index.php index.html index.html.var”
然後測試php支援
安裝RRDTool
RRDTool需要相應的庫檔案支援,需要安裝如下庫檔案:
cgilib, libart_lgpl, intltool, pango, cario, rrdtool
1) 安裝cgilib (0.5)
tar xvf cgilib0.5.0.tar.gz
cd cgilib0.5.0
修改cgi.c(删除malloc.h一行)
修改cgitext.c
原本printf ("<h3>Cookie "Library" set</h3>\n");
改為printf ("<h3>Cookie \"Library\" set</h3>\n");
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) 安裝libart_lgpl
tar xvf libart_lgpl-2.3.21.tar.gz
cd libart_lgpl-2.3.21
./configure --prefix=/usr/local/rrdtool/lb
3) 安裝intltool
yum install perl-XML-Parser
tar xvf intltool-0.40.6.tar.gz
cd intltool-0.40.6
4) 安裝cairo和cairo-devel (這個軟體rpm -ivh |grep cairo 能查找到,沒有安裝)
cd cairo-1.8.10
./configure --prefix=/usr/local/cairo
yum –y install cario-devel
5) 安裝pango (這個軟體rpm -ivh |grep pango能查找到,沒有安裝)
cd pango-1.28.1
./configure --prefix=/server/cacti/pango
6) 安裝rrdtool
tar xvf rrdtool-1.4.2.tar.gz
cd rrdtool-1.4.2
./configure --prefix=/usr/local/rrdtool
ln -s /usr/local/rrdtool/bin/* /usr/local/bin/
//執行rrdtool 看是否安裝正确
#cd /usr/local/rrdtool/share/rrdtool/examples
./stripes.pl //在目前目錄下生成一個檔案stripes.png,說明安裝成功.
cp stripes.png /usr/local/apache/htdocs/
//在浏覽器輸入 http://localhost/stripes.png,看到如下圖形,說明RRDTool安裝成功:)
安裝net-snmp
tar xvf net-snmp-5.5.tar.gz
cd net-snmp-5.5
./configure --prefix=/usr/local/net-snmp --enable-developer
//有幾個互動式的問答,要自己選擇合适的配置. 版本選2
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/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf
echo " /usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf" >> /etc/rc.local
測試:
snmpwalk -v 1 -c public 127.0.0.1 SNMPv2-MIB::system
出現如下界面,就是正常運作
安裝Cacti
tar -xzvf cacti-0.8.7e.tar.gz
mv cacti-0.8.7e /usr/local/apache/htdocs/cacti
useradd cacti
chown -R cacti /usr/local/apache/htdocs/cacti/rra
chgrp -R cacti /usr/local/apache/htdocs/cacti
crontab -e
*/5 * * * * /usr/local/php/bin/php /usr/local/apache/htdocs/cacti/poller.php > /dev/null 2>&1
安裝Cactid
tar xvf cacti-cactid-0.8.6k.tar.gz
cd cacti-cactied-0.8.6k
./configure --prefix=/usr/local/cactied --with-mysql=/usr/local/mysql --with-snmp=/usr/local/net-snmp
###configure: error: cannot run /bin/sh config/config.sub 根據錯誤提示,檢視config目錄下的兩個檔案config.sub和config.guess的連結指向的檔案是否存在。
mkdir /usr/local/cactid
cp cactid cactid.conf /usr/local/cactid
資料庫配置
/usr/local/mysql/bin/mysql
mysql> set password for root@localhost=password('rootpw');
mysql> create database cactidb;
mysql> grant all on cactidb.* to root;
mysql> grant all on cactidb.* to root@localhost;
mysql> grant all on cactidb.* to cactiuser;
mysql> grant all on cactidb.* to cactiuser@localhost;
mysql> set password for cactiuser@localhost=password('cactipw');
mysql> exit
cd /usr/local/apache/htdocs/cacti
/usr/local/mysql/bin/mysql --user=root --password=rootpw cactidb < cacti.sql
chown -R cacti rra/ log/
tar xvf cacti-spine-0.8.7e.tar.gz
cd cacti-spine-0.8.7e
/usr/local/spine/etc/spine.conf
/usr/local/cactid/cactid.conf
浏覽器輸入http://yourip/cacti進行配置
./configure --prefix=/usr/local/spine --with-mysql=/usr/local/mysql
cd /usr/local/spine/bin
./spine
修改以下配置檔案的資料庫名,使用者名密碼等(見附件)
/usr/local/apache/htdocs/cacti/include/config.php
./configure --prefix=/usr/local/apache --enable-so --enable-rewrite
echo "/usr/local/apache/bin/apachectl start" >> /etc/rc.local
2.3PHP
首先安裝zlib,freetype,libpng,jpeg 以便于讓PHP 支援GD 庫
1) 安裝zlib
tar xvf zlib-1.2.5.tar.tar
cd zlib-1.2.5
./configure --prefix=/usr/local/zlib
2) 安裝freetype
cd freetype-2.3.5
./configure --prefix=/usr/local/freetype
3) 安裝linpng
tar xvf libpng-1.4.3.tar.gz
cd libpng-1.4.3
cd scripts/
mv makefile.linux ../makefile
注意,這裡的makefile 不是用./configure生成,而是直接從scripts/裡複制
cd ..
4) 安裝jpeg
tar xvf jpegsrc.v7.tar.gz
cd jpeg-7
mkdir /usr/local/libjpeg/{include,bin,lib,man/man1}
./configure --prefix=/usr/local/libjpeg --enable-shared --enable-static
注意,這裡configure帶--enable-shared 參數是為了生成共享庫
5) 檢查libxml版本是否符合php5的要求
#rpm -qa |grep libxml
//版本符合要求,則不需要再安裝,否則,需要解除安裝libxml包,安裝更高版本的libxml.
//#rpm -e libxml*
//#cd libxml-2.7.7