先配置好LAMPphp
一、先安裝好mysql(在此略)
二、yum install openssl*html
tar -zxvf httpd-2.2.15.tar.gz
cd httpd-2.2.15
./configure --prefix=/usr/local/apache --enable-modules --enable-ssl --with-mysql=/usr/local/mysql/ --enable-module=somysql
make ; make installweb
二、yum install curl*
tar -zxvf zlib-1.2.3.tar.gz
./configure --prefix=/usr/local/zlib
make;make installsql
64位應該還有點問題。我後面從新編譯了此軟件包。(如下爲64位安裝)
cd zlib-1.2.3
CFLAGS="-O3 -fPIC" ./configure --prefix=/usr/local/zlib/
make ; make install
make clean數據庫
yum install gccapache
tar -zxvf libpng-1.2.31.tar.gz
cd libpng-1.2.31
./configure --prefix=/usr/local/libpng
make ; make install服務器
tar -zxvf freetype-2.3.5.tar.gz
cd freetype-2.3.5
./configure --prefix=/usr/local/freetype
make ; make installapp
tar -zxvf jpegsrc.v6b.tar.gz
cd jpeg-6b/
mkdir -pv /usr/local/jpeg/{,bin,lib,include,man/man1,man1}
./configure --prefix=/usr/local/jpeg --enable-shared --enable-static
make ; make installfrontend
64位出現報錯,按如下安裝
cp /usr/share/libtool/config.guess .
cp /usr/share/libtool/config.sub .
./configure --prefix=/usr/local/jpeg --enable-shared --enable-static
make ; make install
yum install gettext
tar -zxvf fontconfig-2.4.2.tar.gz
cd fontconfig-2.4.2
./configure --with-freetype-config=/usr/local/freetype/bin/freetype-config --with-expat=builtin
make ; make install
yum install fontconfig
tar -zxvf gd-2.0.35.tar.gz
cd gd-2.0.35
CPPFLAGS="-I/usr/local/freetype/include -I/usr/local/jpeg/include -I/usr/local/libpng/include -I/usr/local/gettext/include" ./configure --prefix=/usr/local/gd2/ --with-zlib=/usr/local/zlib/ --with-png=/usr/local/libpng/ --with-jpeg=/usr/local/jpeg/ --with-freetype=/usr/local/freetype/ --with-gettext=/usr/local/gettext/
make ; make install
tar -zxvf libxml2-2.6.30.tar.gz
cd libxml2-2.6.30
./configure --prefix=/usr/local/libxml2
make ; make install
yum install libxslt
tar -zxvf php-5.2.6.tar.gz
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql/ --enable-ftp --enable-sockets --with-gd=/usr/local/gd2/ --with-jpeg-dir=/usr/local/jpeg/ --with-zlib-dir=/usr/local/zlib/ --with-png-dir=/usr/local/libpng/ --with-freetype-dir=/usr/local/freetype/ --enable-bcmath --enable-soap --enable-mbstring --with-gettext=/usr/local/gettext
須要安裝gettext
make ; make install
cp php.ini-dist /usr/local/php/lib/php.ini
#cp /root/php-5.2.6/php.ini-dist /usr/local/php/lib/php.ini
#vi /usr/local/php/lib/php.ini
1.將extension=php_mysql.dll前面的#去掉
2.將腳本超時的30s(PHP max execution time) 改爲300s
3.將date.timezone ="asia/shanghai"
注意:/usr/local/apache/conf/httpd.conf加上以下代碼使apache執行PHP
LoadModule php5_module modules/libphp5.so (這段代碼確定能夠在httpd.conf找到,若是找不到則須要從新編譯了)
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
(這兩行是讓apache知道php的文件類型)
DirectoryIndex index.html 改爲DirectoryIndex index.html index.php
讓apache默認的首頁也支持index.php
注意:重啓apache服務器,使得其加載php解析
在默認的/usr/local/apache/htdocs下創建info.php(給予777權限可執行權限)
<?php
phpinfo();
?>
yum install libssh
yum install net-snmp net-snmp-devel
或安裝
yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath
tar -zxvf zabbix-1.8.9.tar.gz
cd zabbix-1.8.9
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl
mysql> create database zabbix character set utf8;
grant all on zabbix.* to zabbix@localhost identified by 'zabbix';
# cat ./create/schema/mysql.sql |mysql -uroot -proot zabbix
# cat ./create/data/data.sql |mysql -uroot -proot zabbix
# cat ./create/data/p_w_picpaths_mysql.sql |mysql -uroot -proot zabbix
添加zabbix服務對應的端口(能夠省略,可是官方建議有)
cat >>/etc/services<<EOF
zabbix-agent 10050/tcp Zabbix Agent
zabbix-agent 10050/udp Zabbix Agent
zabbix-trapper 10051/tcp Zabbix Trapper
zabbix-trapper 10051/udp Zabbix Trapper
EOF
mkdir /etc/zabbix
cp misc/conf/*.conf /etc/zabbix/
修改
vi /etc/zabbix/zabbix_server.conf
sed -i 's/^\(DBUser=\).*$/\1zabbix/g' /etc/zabbix/zabbix_server.conf
sed -i 's/^\(.*\)\(DBPassword=\).*$/\zabbix/g' /etc/zabbix/zabbix_server.conf
給Zabbix服務端軟件應用程序作軟鏈接
cd /usr/local/zabbix/bin/
for i in *;do ln -s /usr/local/zabbix/bin/${i} /usr/bin/${i};done
cd /usr/local/zabbix/sbin/
for i in *;do ln -s /usr/local/zabbix/sbin/${i} /usr/sbin/${i};done
添加數據庫Lib文件位置到/etc/ld.so.conf中,並使其生效
/usr/local/mysql/lib/mysql/加到 /etc/ld.so.conf
ldconfig生效
拷貝相應的web程序到相關WEB服務目錄下
cd /usr/local/src/zabbix-1.8.9
cp -r frontends/php /usr/local/apache/htdocs/zabbix
拷貝必要的zabbix服務端和客戶端啓動腳本到啓動目錄/etc/init.d目錄下,並進行相應修改
cp misc/init.d/redhat/8.0/zabbix_server /etc/init.d/
chmod a+x /etc/init.d/zabbix_server
cp misc/init.d/redhat/8.0/zabbix_agentd /etc/init.d/
chmod a+x /etc/init.d/zabbix_agentd
sed -i 's/^progdir=.*$/progdir="\/usr\/local\/zabbix\/sbin\/"/g' /etc/init.d/zabbix_server
sed -i 's/^progdir=.*$/progdir="\/usr\/local\/zabbix\/sbin\/"/g' /etc/init.d/zabbix_agentd
修改PHP配置文件php.ini內容使其知足zabbix安裝配置需求
sed -i 's/^\(.*\)date.timezone =.*$/date.timezone = Asia\/Shanghai/g' /usr/local/php/lib/php.ini
sed -i 's/^\(.*\)post_max_size =.*$/post_max_size = 16M/g' /usr/local/php/lib/php.ini
sed -i 's/^\(.*\)max_execution_time =.*$/max_execution_time = 300/g' /usr/local/php/lib/php.ini
sed -i 's/^\(.*\)max_input_time =.*$/max_input_time = 300/g' /usr/local/php/lib/php.ini
在改成中文時圖片出現亂碼:
如下方法解決。
1.上傳本地系統的C:\WINDOWS\Fonts\simhei.ttf文件到zabbixweb目錄的zabbix/fonts下.
2.vi zabbix/include/defines.inc.php把全部的DejaVuSans替換成simhei
報錯處理
報Fatal error: Call to undefined function bcscale()802的錯誤,那麼對PHP進行從新編譯。
p_w_picpathcreatefromstring() [<a href='function.p_w_picpathcreatefromstring'>function.p_w_picpathcreatefromstring</a>]: No PNG support in this PHP build [include/maps.inc.php:461]
:「<br /><b>Fatal error</b>: Call to undefined function p_w_picpathcreate() in <b>/usr/local/projects/ipcn/zabbix/include/classes/graph.inc.php</b> on line <b>1235</b><br />」。這裏的p_w_picpathcreate()是gd庫中用於建立圖像的方法,所以就從gd庫的狀態查起。寫了個phpinfo()頁,發現加載的擴展模塊配置文件裏有gd.ini,可是卻沒有顯示gd模塊的信息。因而在php.ini裏開啓錯誤日誌記錄,重啓了一下lighttpd,查看error.log,發現了錯誤提示以下:「PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/lib/php5/20060613+lfs/gd.so’」。
一開始我還覺得是缺乏了gd.so,可是查看了下發現文件是存在的,但是php不管如何都沒法成功加載。因而乎上網搜尋解決方法,最後在一個老外的debian論壇上找到了解決方案。其實很簡單,具體操做以下:
首先執行
find / -name libgd.so*
找到了在「/usr/local/lib/」下有libgd.so、libgd.so.2和libgd.so.2.0.0三個文件。而後切換到這個目錄下,將這個三個文件移除。固然了,爲防萬一最好新建個文件夾將它們挪過去,之後須要的話還能恢復。命令以下:
cd /usr/local/lib/
mkdir libgd.bak
mv libgd.so* libgd.bak/
而後再次重啓lighttpd,php就成功加載了gd模塊了。至於爲何這樣我還不是很清楚,多是在加載的時候會先從「/usr/local/lib」裏去讀取.so文件,而後形成與正常的gd.so的衝突吧。嗯這個還有待研究。
server zabbix_server stop出現報libmysqlclient.so.15 錯誤那就直接在/目錄下面查找。而後把這個文件放置/lib下面。再試着重啓便可。