#make
#make install
啟動Apache服務器,並查端口是否開啟,啟動Apache服務器的命令行如下:
#/usr/local/apache2/bin/apachectl start
查看端口命令行如下:
#netstat -tnl|grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LIST
測試安裝結果,打開浏覽器,在地址欄中輸入URL為:http://your IP
如果浏覽器中出現It works!則表明Apache服務器可以使用。
每種服務器軟件都有必要制成開機時自動啟動,Apache服務器開機自動啟動,只要在“/etc/rc.d/rc.local”文件,加上Apache服務器的啟動命令即可。可以直接打開“/etc/rc.d/rc.local”文件,在最後一行寫入Apache啟動命令,也可以用echo命令追加進去,如下命令行示:
#echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.local
啟動apache過程中,如果出現如下圖所示的錯誤:
修改/usr/local/apache2/conf/httpd.conf
找到#ServerName www.example.com:80在其下面添加一條
ServerName yourIP:80即可!
安裝PHP
# cd /usr/local/src
# tar -zvxf php-5.4.3.tar.gz
# mkdir -p /usr/local/php
# cd php-5.4.3
#./configure --prefix=/usr/local/php \
>--with-config-file-path=/usr/local/php \
>--with-apxs2=/usr/local/apache2/bin/apxs \
>--with-gd=/usr/local/gd2 \
>--with-jpeg-dir=/usr/local/jpeg8 \
>--with-zlib-dir=/usr/local/zlib \
>--with-png-dir=/usr/local/libpng \
>-with-freetype-dir=/usr/local/freetype -\
>--with-curl=/usr/local/curl \
>--with-xsl=/usr/local/libxslt \
>--enable-trace-vars \
>--enable-mbstring=all \
>--enable-soap
#make
#make install
安裝完成後,需要建立PHP配置文件。在使用configure命令安裝配置時使用“--with-config-file-path=/usr/local/php/etc/”選項,指定了配置文件的位置。將源碼包下面的php.ini-development 文件復制到/usr/local/php/etc/中,並改名為php.ini即可。如下示:
#cp php.ini-development /usr/local/php/php.ini
安裝PHP的過程中可能會出現如下錯誤
make: *** [ext/gd/gd.lo] error
解決方法:
vi <gd_dir>/include/gd_io.h
gdIOCtx結構中增加void *data;
格式如下
typedef struct gdIOCtx
{
int (*getC) (struct gdIOCtx *);
int (*getBuf) (struct gdIOCtx *, void *, int);
void (*putC) (struct gdIOCtx *, int);
int (*putBuf) (struct gdIOCtx *, const void *, int);
/* seek must return 1 on SUCCESS, 0 on FAILURE. Unlike fseek! */
int (*seek) (struct gdIOCtx *, const int);
long (*tell) (struct gdIOCtx *);
我的GD安裝在/usr/local/gd2目錄下,所以是#vi /usr/local/gd2/include/gd_io.h
然後重新編譯安裝即可。
整合Apache與PHP,上面編譯之前,我們使用configure命令安裝配置時,使用--with-apxs2=/usr/local/apache2/bin/apxs選項以使Apache 2將PHP作為功能模塊使用。但我們還要修改Apahce配置文件,添加PHP的支持,告訴Apache將哪些後綴作為PHP解析。例如,讓Apache把.php或.phtml後綴名解析為PHP.使用vi打開Apache的配置文件/etc/httpd/httpd.conf,找到AddType application/x-gzip .gz .tgz指令選項,並在其下方添加一條指令AddType application/x-httpd-php .php .phtml。也可以將任何後綴的文件解析為PHP,只要在添加的語句中加入並用空格分開,這裡以多添加一個.phtml來示例,如下示:
# If the AddEncoding directives above are commented-out, then you
# probably should define those extensions to indicate media types:
#
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php .phtml
修改完成後必須重啟Apache服務器,才能重新加載配置文件使修改生效。
修改完成後必須重啟Apache服務器,才能重新加載配置文件使修改生效。
#/usr/local/apache2/bin/apachectl stop
#/usr/local/apache242/bin/apachectl start
安裝Nagios
#創建帳號
[root@Nagios src]# useradd nagios
[root@Nagios src]# passwd nagios
#創建一個用戶組名為 nagcmd 用於從 Web 接口執行外部命令。
[root@Nagios src]# groupadd nagcmd
#添加 nagios 和 apache 用戶到該組
[root@Nagios src]# usermod -a -G nagcmd nagios
[root@Nagios src]# usermod -a -G nagcmd daemon
#daemon為運行apache的帳戶
[root@Nagios src]# tar zxvf nagios-3.4.3.tar.gz
[root@Nagios src]# cd nagios-3.4.3
[root@Nagios nagios-3.4.3]# ./configure --with-command-group=nagcmd \
>--with-nagios-user=nagios \
>--with-nagios-group=nagios \
>–with-gd-lib=/usr/local/gd2/lib/ \
>–with-gd-inc=/usr/local/gd2/include/
[root@Nagios nagios-3.4.3]# make all
# 使用make install來安裝主程序,CGI和HTML文件
[root@Nagios nagios-3.4.3]# make install
# 使用make install-init在/etc/rc.d/init.d安裝啟動腳本
[root@Nagios nagios-3.4.3]# make install-init
# 使用make install-commandmode來配置目錄權限
[root@Nagios nagios-3.4.3]# make install-commandmode
# 使用make install-cofig來安裝示例配置文件,安裝的路徑是/usr/local/nagios/etc.
[root@Nagios nagios-3.4.3]# make install-config
#生成 apache 配置文件
[root@Nagios nagios-3.2.3]# make install-webconf
這一步其實就是將Nagios源碼包中sample-config/目錄下httpd.conf中的內容,追加到/usr/local/apache2/conf/httpd.conf中,用上面的方法有時候追加不進去,建議用下面手動的方法
[root@Nagios nagios]# cat sample-config/httpd.conf >> /usr/local/apache2/conf/httpd.conf
#為 apache 創建一個登陸用戶,注意用戶名是 nagiosadmin,該用戶名是在 cgi.cfg 設置的默認用
戶名,關於 CGI 權限的設置。
注意:第一次添加用戶用-c 選項,以後再添加千萬別在用這個選項了,會覆蓋以前的所有用戶。
[root@Nagios nagios-3.4.3]# Linux/1727.html' target='_blank'>htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
添加開機自動啟動
為了讓 Nagios 和 Apache 可以開機自動啟動,我們把 Nagios 和 Apache 添加到啟動管理程序中。
[root@Nagios ~]# chkconfig --add nagios
[root@Nagios ~]# chkconfig --level 35 nagios on
安裝 Nagios插件nagios-plugins
在啟動 Nagios 之前,我們還需要安裝的是 Nagios 的 Plugins,這個包裡面包含了很多 Nagios
用來執行檢測的命令和腳本,是 Nagios 必須的軟件包。
[root@Nagios ~]# cd /usr/local/src
[root@Nagios src]# tar zxvf nagios-plugins-1.4.16.tar.gz
[root@Nagios src]# cd nagios-plugins-1.4.16
[root@Nagios nagios-plugins-1.4.16]# ./configure --prefix=/usr/local/nagios
--with-nagios-user=nagios --with-nagios-group=nagios
[root@Nagios nagios-plugins-1.4.16]# make && make install
啟動Nagios
如果在安裝過程中,沒有出現錯誤,我們就可以正常啟動 Nagios 和 Apache 了,如果出現了錯
誤,請根據錯誤提示,檢測安裝,一般錯誤時由於依賴的庫文件沒有安裝。
[root@Nagios ~]# /etc/init.d/nagios start
Starting nagios: done.
接著可以使用 http://Nagios 服務器 IP/nagios/
並輸入你設置的賬號 nagiosadmin 和密碼登陸 Nagios,Nagios 會默認添加本機的監控.如下圖所示:
在登陸的過程中,可能會報You don’t have permission to access /nagios/ on this server的錯誤,谷歌和百度了一下,結果好多說是PHP未裝,yum -install php 即可解決問題,其實真正的解決方法如下所示:
首先當然是到/usr/local/nagios/var下查看nagios.log了,內容裡面應該有錯誤的日志會顯示php頁面無法被apache解析
解決方法:
在apache的配置文件httpd.conf修改
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
修改成 <IfModule dir_module> DirectoryIndex index.php index.html
</IfModule>即可。
有的PHP版本裡可能還需加入
LoadModule php5_module modules/libphp5.so AddType application/x-httpd-php .php .phtml AddType applicatoin/x-httpd-php-source .phps 最後兩行,我們前面已經加過,第一行php5.4的版本不需要加。 至此,Nagios的安裝工作就完成了!