- LAMP網站開發黃金組合Linux+Apache+MySQL+PHP
- 楊明華等編著
- 6543字
- 2018-12-29 19:23:44
7.4 Apache2.2+MySQL5.0+ PHP5.2+GD2.0+Firefox2.0的安裝
Linux、Apache、MySQL和PHP被譽為是Web開發中的“黃金組合”。在Red Hat Linux 9發行版中雖然已經捆綁了Apache、MySQL、PHP等軟件包,但為了獲得最佳的性能,還是應該及時從相關網站下載最新的穩定版本來使用。例如,PHP版本5中進一步增強了面向對象的能力,提供了顯式構造函數和析構函數、對象克隆、抽象類等新功能,同時開始支持異常處理,而GD庫2.0支持生成真彩色圖片,可以用于制作圖像縮略圖。
使用“rpm”命令可以查詢當前Red Hat Linux 9中已安裝的軟件包的版本信息:
(1)查詢系統中已安裝的PHP相關軟件包
# rpm -qa | grep -i php php-ldap-4.2.2-17 php-4.2.2-17 // Red Hat Linux 9中系統默認安裝的PHP軟件包的版本號為4.2 asp2php-gtk-0.76.2-5 php-manual-4.2.2-17 asp2php-0.76.2-5 php-devel-4.2.2-17 php-snmp-4.2.2-17 php-imap-4.2.2-17
(2)查詢系統中已安裝的MySQL相關軟件包
# rpm -qa | grep -i mysql mysql-devel-3.23.54a-11 perl-DBD-MySQL-2.1021-3 libdbi-dbd-mysql-0.6.5-5 mysql-server-3.23.54a-11 // Red Hat 9中系統默認安裝的MySQL軟件包的版本號為3.23 mysql-3.23.54a-11 MySQL-python-0.9.1-6 qt-MySQL-3.1.1-6 mod_auth_mysql-1.11-12
(3)查詢系統中已安裝的Apache相關軟件包
# rpm -qa | grep -i http httpd-manual-2.0.40-21 redhat-config-httpd-1.0.1-18 libghttp-devel-1.0.9-7 libghttp-1.0.9-7 httpd-devel-2.0.40-21 httpd-2.0.40-21 // Red Hat Linux 9中系統默認安裝的Apache軟件包的版本號為2.0
(4)查詢系統中已安裝的GD軟件包
# rpm -qa |grep gd gdk-pixbuf-0.18.0-7 gd-progs-1.8.4-11 gdk-pixbuf-devel-0.18.0-7 gd-1.8.4-11 gdk-pixbuf-gnome-0.18.0-7 gdm-2.4.1.3-5 gdb-5.3post-0.20021129.18 sysklogd-1.4.1-12 gd-devel-1.8.4-11 // Red Hat Linux 9中系統默認安裝的GD為1.8.4 gdbm-1.8.0-20 gdbm-devel-1.8.0-20
(5)查詢系統中已安裝的zlib軟件包
# rpm -qa |grep zlib zlib-1.1.4-8 // Red Hat Linux 9中系統默認安裝的zlib為1.1.4 zlib-devel-1.1.4-8
(6)查詢系統中已安裝的libpng軟件包
# rpm -qa |grep libpng libpng10-devel-1.0.13-8 libpng-devel-1.2.2-16 libpng-1.2.2-16 // Red Hat Linux 9中系統默認安裝的libpng為1.2.2 libpng10-1.0.13-8
(7)查詢系統中已安裝的freetype軟件包
# rpm -qa |grep freetype freetype-utils-2.1.3-6 freetype-devel-2.1.3-6 freetype-2.1.3-6 // Red Hat Linux 9中系統默認安裝的freetype為2.1.3 freetype-demos-2.1.3-6
(8)查詢系統中已安裝的jpeg軟件包
# rpm -qa |grep jpeg libjpeg-6b-26 // Red Hat Linux 9中系統默認安裝為jpge-6b libjpeg-devel-6b-26
(9)查詢系統中已安裝的autoconf軟件包
# rpm -qa | grep autoconf autoconf-2.57-3 // Red Hat Linux 9中系統默認安裝的autoconf為2.57 autoconf213-2.13-6
(10)查詢系統中已安裝libxml2軟件包
# rpm -qa | grep libxml libxml2-2.5.4-1 // Red Hat Linux 9中系統默認安裝的libxml2為2.5.4 perl-libxml-enno-1.02-29 libxml-1.8.17-8 perl-libxml-perl-0.07-28 libxml2-python-2.5.4-1 libxml2-devel-2.5.4-1 libxml-devel-1.8.17-8
下面將介紹如何將Apache、MySQL、PHP和GD庫分別從2.0.40、3.2.3、4.2、1.8.4升級到2.2.8、5.0.5、5.2.5和2.0.35。Redhat Linux 9默認的瀏覽器為Mozalla 1.2.1,可以將其升級為Mozalla Firefox 2.0.0.9。
7.4.1 獲取軟件包
軟件包的安裝可以采用RPM包或源碼包兩種形式,本書僅以源碼包的安裝為例加以說明。首先下載最新的Apache、MySQL、PHP及相關庫文件的源碼包,總共11個,分別為:
● autoconf-2.61.tar.gz:下載地址為ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.61.tar.gz
● firefox-2.0.0.9.zh-CN.linux-i686.tar.gz:下載地址為http://www.mozilla.org/download.html
● httpd-2.2.8.tar.gz:下載地址為http://apache.justdn.org/httpd/
● libxml2-2.6.19.tar.gz:下載地址為http://ftp.gnome.org/pub/GNOME/sources/libxml2/2.6/libxml2-2.6.19.tar.gz
● mysql-5.0.51a-linux-i686.tar.gz:下載地址為http://dev.mysql.com/downloads/
● freetype-2.1.10.tar.gz:下載地址為http://www.fretype.org
● jpegsrc.v6b.tar.gz:下載地址為http://freshmeat.net/projects/libjpeg/
● libpng-1.2.24.tar.gz:下載地址為http://www.libpng.org/pub/png/libpng.html
● zlib-1.2.3.tar.gz:下載地址為http://www.zlib.net/
● gd-2.0.35.tar.gz:下載地址為http://www.libgd.org/Downloads
● php-5.2.5.tar.gz:下載地址為http://www.php.net/downloads.php
其中,在安裝PHP5(php-5.2.5.tar.gz)之前應安裝libxml2(libxml2-2.6.19.tar.gz),安裝GD2(gd-2.0.35.tar.gz)之前應先安裝zlib-1.2.3.tar.gz、libpng-1.2.24.tar.gz、freetype-2.1.10.tar.gz、jpegsrc.v6b.tar.gz和autoconf-2.61.tar.gz。Apache2.2、MySQL5.0和PHP5.2的安裝,按MySQL->Apache->PHP順序。
7.4.2 安裝環境的準備
由于下載的是源碼包,需要在本機編譯后才能安裝使用,所以在安裝前應首先檢查系統中是否已經安裝了gcc。可以在命令行中輸入命令“gcc -v”來查看是否安裝了gcc,如下所示:
# gcc -v Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.2.2/specs Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --host=i386-redhat-linux Thread model: posix gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)
如果顯示上述信息,則表示系統中已經安裝了gcc,且gcc的版本號為3.2.2,否則需要安裝gcc。安裝gcc,用戶可以參照如下步驟完成。
(1)單擊【啟動程序】按鈕,Linux出現【啟動程序】菜單。
(2)單擊【系統設置】|【添加/刪除應用程序】菜單項,Linux出現【添加/刪除應用程序】窗口。
(3)在出現的【添加/刪除應用程序】窗口中,用戶可以看到【開發工具】復選框,如圖7-6所示。

圖7-6 安裝【開發工具】
(4)點選【開發工具】復選框,然后單擊【更新】按鈕,按系統提示依次插入安裝光盤,系統會自動完成更新。
如果目前系統正在運行MySQL和Apache,通過【服務配置】窗口(單擊【啟動程序】|【系統設置】|【服務器設置】|【服務】),將啟動【服務配置】窗口,如圖7-7所示)將其關閉,如圖7-8、7-9所示。

圖7-7 啟動【服務器設置】窗口

圖7-8 關閉MySQL服務

圖7-9 關閉Apache服務
為了方便安裝,在根目錄下建立/soft目錄,將所下載的源碼包文件保存到該目錄下。通過單擊【啟動程序】|【系統工具】|【終端】命令,打開一個終端窗口,如圖7-10所示。安裝操作將在終端窗口中通過命令完成。

圖7-10 打開一個【終端】窗口
7.4.3 安裝GD庫
安裝GD2(gd-2.0.35.tar.gz)之前應先安裝zlib-1.2.3.tar.gz、libpng-1.2.24.tar.gz、freetype-2.1.10.tar.gz 、 jpegsrc.v6b.tar.gz和autoconf-2.61.tar.gz 。 本 例 安 裝按zlib->libpng->freetype- >jpeg6->autoconf->gd順序。
1.安裝zlib
(1)對源碼文件解壓并建立安裝目錄,命令行如下所示:
// 將zlib-1.2.3.tar.gz解壓到當前目錄zlib-1.2.3中 #tar zxvf zlib-1.2.3.tar.gz //改變當前目錄為zlib-1.2.3 #cd zlib-1.2.3
(2)使用“configure”命令生成安裝配置文件,命令行如下所示:
//生成安裝配置文件 # ./configure --prefix=/usr/local/zlib Checking for gcc... Building static library libz.a version 1.2.3 with gcc. Checking for unistd.h... Yes. Checking whether to use vs[n]printf() or s[n]printf()... using vs[n]printf() Checking for vsnprintf() in stdio.h... Yes. Checking for return value of vsnprintf()... Yes. ... ...
(3)使用“make”命令編譯并生成安裝文件,命令行如下所示:
# make //對源文件進行編譯 gcc -O3 -DUSE_MMAP -c -o infback.o infback.c gcc -O3 -DUSE_MMAP -c -o inftrees.o inftrees.c gcc -O3 -DUSE_MMAP -c -o inffast.o inffast.c ar rc libz.a adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o zutil.o inflate.o infback.o inftrees.o inffast.o ... ...
(4)使用“make install”命令進行安裝,如下所示:
# make install //開始安裝 cp zlib.h zconf.h /usr/local/zlib/include chmod 644 /usr/local/zlib/include/zlib.h /usr/local/zlib/include/zconf.h cp libz.a /usr/local/zlib/lib cd /usr/local/zlib/lib; chmod 755 libz.a cd /usr/local/zlib/lib; if test -f libz.so.1.2.3; then \ ... ...
2.安裝libpng
(1)對源碼文件解壓并建立配置文件,命令行如下所示:
//將libpng-1.2.24.tar.gz解壓到當前目錄libpng-1.2.24中 #tar zxvf libpng-1.2.24.tar.gz #cd libpng-1.2.24 //改變當前目錄為libpng_1.2.24 //將scripts子目錄中的配置文件makefile.linux更名復制到當前目錄,且文件名改為makefile # cp scripts/makefile.linux makefile
(2)使用“make”命令編譯并生成安裝文件,命令行如下所示:
# make //開始編譯 gcc -I../zlib -Wall -O3 -funroll-loops -DPNG_NO_MMX_CODE -c -o png.o png.c gcc -I../zlib -Wall -O3 -funroll-loops -DPNG_NO_MMX_CODE -c -o pngset.o pngset.c gcc -I../zlib -Wall -O3 -funroll-loops -DPNG_NO_MMX_CODE -c -o pngget.o pngget.c ... ...
(3)使用“make install”命令進行安裝,如下所示:
# make install //開始安裝 cp png.h pngconf.h /usr/local/include/libpng12 chmod 644 /usr/local/include/libpng12/png.h /usr/local/include/libpng12/pngconf.h (cd /usr/local/include; ln -sf libpng12 libpng; ln -sf libpng12/* .) cp libpng.a /usr/local/lib/libpng12.a ... ...
3.安裝freetype
(1)對源碼文件解壓并建立安裝目錄,命令行如下所示:
//將freetype-2.1.10.tar.gz解壓到當前目錄freetype-2.1.10中 #tar -zvxf freetype-2.1.10.tar.gz //改變當前目錄為freetype-2.1.10 #cd freetype-2.1.10 //建立安裝目錄/usr/local/freetype # mkdir -p /usr/local/freetype
(2)使用“configure”命令生成安裝配置文件,命令行如下所示:
//生成安裝配置文件 # ./configure --prefix=/usr/local/freetype cd builds/unix; ./configure --prefix=/usr/local/freetype checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking target system type... i686-pc-linux-gnu ... ...
(3)使用“make”命令編譯并生成安裝文件,命令行如下所示:
//開始編譯 # make gcc -pedantic -ansi -I/soft/freetype-2.1.10/freetype-2.1.10/objs -I./builds/unix -I/soft/freetype-2.1.10/freetype-2.1.10/include -c -Wall -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB -DDARWIN_NO_CARBON "-DFT_CONFIG_CONFIG_H=<ftconfig.h>" -I/soft/freetype-2.1.10/freetype-2.1.10/src/type42 /soft/freetype-2.1.10/freetype-2.1.10/src/type42/type42.c -fPIC -DPIC -o /soft/freetype-2.1.10/freetype-2.1.10/objs/.libs/type42.o ... ...
(4)使用“make install”命令進行安裝,如下所示:
//開始安裝 # make install mkdir -p -- /usr/local/freetype/lib /usr/local/freetype/lib/pkgconfig /usr/local/freetype/include/freetype2/freetype/config /usr/local/freetype/include/freetype2/freetype/internal /usr/local/freetype/include/freetype2/freetype/cache /usr/local/freetype/bin /usr/local/freetype/share/aclocal ... ...
4.安裝jpeg6
(1)對源碼文件解壓并建立安裝目錄,命令行如下所示:
//將jpegsrc.v6b.tar.gz解壓到當前目錄jpegsrc.v6b中 #tar -zvxf jpegsrc.v6b.tar.gz //改變當前目錄為jpegsrc.v6b #cd jpegsrc.v6b //建立安裝目錄/usr/local/jpeg6 # mkdir -p /usr/local/jpeg6 //建立存放命令的目錄/usr/local/jpeg6/bin # mkdir -p /usr/local/jpeg6/bin //建立存放頭文件的目錄/usr/local/jpeg6/include # mkdir -p /usr/local/jpeg6/include //建立存放手冊的目錄/usr/local/jpeg6/man # mkdir -p /usr/local/jpeg6/man # mkdir -p /usr/local/jpeg6/jpeg6man1 # mkdir -p /usr/local/jpeg6/man/man1
(2)使用“configure”命令生成安裝配置文件,命令行如下所示:
//生成配置文件 # ./configure --prefix=/usr/local/jpeg6/ --enable-share --enable-static checking for gcc... gcc checking whether the C compiler (gcc ) works... yes checking whether the C compiler (gcc ) is a cross-compiler... no ... ...
(3)使用“make”命令編譯并生成安裝文件,命令行如下所示:
# make //開始編譯 ./libtool --mode=compile gcc -O2 -I. -c ./jcapimin.c gcc -O2 -I. -c ./jcapimin.c echo timestamp > jcapimin.lo ./libtool --mode=compile gcc -O2 -I. -c ./jcapistd.c gcc -O2 -I. -c ./jcapistd.c echo timestamp > jcapistd.lo ./libtool --mode=compile gcc -O2 -I. -c ./jctrans.c gcc -O2 -I. -c ./jctrans.c echo timestamp > jctrans.lo ./libtool --mode=compile gcc -O2 -I. -c ./jcparam.c gcc -O2 -I. -c ./jcparam.c echo timestamp > jcparam.lo ... ...
(4)使用“make install”命令進行安裝,命令行如下所示:
# make install //開始安裝 ./libtool --mode=install /usr/bin/install -c cjpeg /usr/local/jpeg6//bin/cjpeg /usr/bin/install -c cjpeg /usr/local/jpeg6//bin/cjpeg ./libtool --mode=install /usr/bin/install -c djpeg /usr/local/jpeg6//bin/djpeg ... ...
(5)安裝jpeg6庫文件,命令行如下所示:
//創建jpeg6庫文件所在目錄 # mkdir -p /usr/local/jpeg6/lib //開始安裝jpeg6庫文件 # make install-lib ./libtool --mode=install /usr/bin/install -c libjpeg.la /usr/local/jpeg6/lib/libjpeg.la /usr/bin/install -c libjpeg.la /usr/local/jpeg6/lib/libjpeg.la /usr/bin/install -c .libs/libjpeg.a /usr/local/jpeg6/lib/libjpeg.a ranlib /usr/local/jpeg6/lib/libjpeg.a chmod 644 /usr/local/jpeg6/lib/libjpeg.a ... ...
(6)使用libtool命令完成libtool庫的安裝,命令行如下所示:
# libtool --finish /usr/local/jpeg6//lib // PATH="$PATH:/sbin" ldconfig -n /usr/local/jpeg6//lib ---------------------------------------------------------------------- Libraries have been installed in: /usr/local/jpeg6//lib If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the '-LLIBDIR' flag during linking and do at least one of the following: ... ...
5.安裝autoconf
(1)對源碼文件解壓,命令行如下所示:
//將autoconf-2.61.tar.gz解壓到當前目錄autoconf-2.61中 #tar -zvxf autoconf-2.61.tar.gz //改變當前目錄為autoconf-2.61 #cd autoconf-2.61
(2)使用“configure”命令生成安裝配置文件,命令行如下所示:
#./configure --prefix=/usr checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p ... ...
(3)使用“make”命令編譯并生成安裝文件,命令行如下所示:
# make Making all in bin make[1]: Entering directory '/soft/autoconf-2.61/autoconf-2.61/bin' make[2]: Entering directory '/soft/autoconf-2.61/autoconf-2.61' make[2]: Leaving directory '/soft/autoconf-2.61/autoconf-2.61' ... ...
(4)使用“make install”命令進行安裝,命令行如下所示:
# make install Making install in tests make[1]: Entering directory '/soft/autoconf-2.61/autoconf-2.61/tests' make[2]: Entering directory '/soft/autoconf-2.61/autoconf-2.61' make[2]: Leaving directory '/soft/autoconf-2.61/autoconf-2.61' ... ...
6.安裝gd
(1)對源碼文件解壓,命令行如下所示:
//將gd-2.0.35.tar.gz解壓到當前目錄gd-2.0.35.tar.gz中 #tar -zvxf gd-2.0.35.tar.gz //改變當前目錄為gd-2.0.35.tar.gz #cd gd-2.0.35.tar.gz
(2)使用“configure”命令生成安裝配置文件,命令行如下所示:
//生成配置文件 #./configure --prefix=/usr/local/gd --with-jpeg=/usr/local/jpeg6 --with-png=/usr/local/lib --with-zlib=/usr/local/zlib --with-freetype=/usr/local/freetype checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking target system type... i686-pc-linux-gnu …… configure.ac:28: error: Autoconf version 2.58 or higher is required
(3)使用“make”命令編譯并生成安裝文件,命令行如下所示:
# make cd . && /bin/sh /soft/gd-2.0.35/gd-2.0.35/config/missing --run aclocal-1.9 -I config /soft/gd-2.0.35/gd-2.0.35/config/missing: line 46: aclocal-1.9: command not found WARNING: 'aclocal-1.9' is missing on your system. You should only need it if you modified 'acinclude.m4' or 'configure.ac'. You might want to install the 'Automake' and 'Perl' packages. Grab them from any GNU archive site. ... ...
(4)使用“make install”命令進行安裝,命令行如下所示:
# make install test -z "/usr/local/gd/include" || mkdir -p -- "/usr/local/gd/include" /usr/bin/install -c -m 644 'gd.h' '/usr/local/gd/include/gd.h' /usr/bin/install -c -m 644 'gdfx.h' '/usr/local/gd/include/gdfx.h' /usr/bin/install -c -m 644 'gd_io.h' '/usr/local/gd/include/gd_io.h' ... ...
7.4.4 安裝MySQL
(1)在安裝MySQL之前首先應檢查系統中是否已經安裝了低版本的MySQL。如果已經安裝,應先進行卸裁,然后再安裝。軟件包的檢查只需在終端窗口中運行命令:
# rpm -qa | grep -i mysql
如果顯示任何內容,則表示已安裝相關軟件包,可使用“rpm -e”命令進行刪除,命令格式如下所示:
rpm -e packagename --nodeps
其中參數“packagename”表示待刪除的軟件包名稱,參數“--nodeps”表示在刪除軟件包的同時不對該軟件包所使用的依賴文件進行刪除。單獨使用該命令一次只能刪除一個軟件包。對該命令進行簡單編程,可以對相關的多個軟件包進行統一刪除,如下所示:
#for i in 'rpm -qa|grep -i mysql' >do rpm -e $i --nodeps >done
接下來,開始MySQL新版本的安裝。
★ 注意 ★
其中“#for i in 'rpm qa|grep i mysql'”語句中使用的是后引號。
(2)對源碼包文件解壓并配置安裝環境,命令行如下所示:
//將mysql-5.0.51a-linux-i686.tar.gz解壓到當前目錄mysql-5.0.51a-linux-i686中 #tar -zvxf mysql-5.0.51a-linux-i686.tar.gz //改變當前目錄為gd-2.0.35.tar.gz #cd gd-2.0.35.tar.gz //建立mysql的安裝目錄 #mkdir -p /usr/local/mysql //復制解壓文件到/usr/local/mysql目錄中 # cp -rf * /usr/local/mysql //改變當前目錄為/usr/local/mysql #cd /usr/local/mysql //修改mysql用戶信息,如果系統中不存在mysql用戶,則使用“useradd”命令創建一個mysql用戶 # usermod -d /usr/local/mysql/data -s /sbin/nologin -g mysql mysql //將當前目錄(/usr/local/mysql)的屬主設為root # chown -R root . //將子目錄data的屬主設為mysql # chown -R mysql data
(3)使用腳本進行安裝,命令行如下所示:
//使用子目錄scripts中的腳本“mysql_install_db”安裝MySQL # ./scripts/mysql_install_db --user=mysql Installing MySQL system tables... The latest information about MySQL is available on the web at http://www.mysql.com Please consult the MySQL manual section: 'Problems running mysql_install_db', and the manual section that describes problems on your OS. Another information source is the MySQL email archive. Please check all of the above before mailing us! And if you do mail us, you MUST use the ./bin/mysqlbug script! ... ...
(4)建立MySQL配置文件my.conf
將子目錄support-files中的腳本“mysql_medium.cnf”換名復制到/etc目錄下,更名為my.cnf
#cp ./support-files/mydql-medium.cnf /etc/my.cnf
(5)啟動及相關測試
啟動MySQL,命令如下所示:
# ./bin/mysqld_safe --user=mysql & [2] 26532 [1] Exit 127 ./mysql_safe --user=mysql Starting mysqld daemon with databases from /var/lib/mysql
使用“mysqladmin ping”命令測試安裝:
# mysqladmin ping mysqld is alive
使用“mysqladmin version”顯示版本信息
# mysqladmin version mysqladmin Ver 8.23 Distrib 3.23.54, for redhat-linux-gnu on i386 Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL license Server version 5.0.51a Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/lib/mysql/mysql.sock Uptime: 35 min 28 sec Threads: 1 Questions: 18 Slow queries: 0 Opens: 11 Flush tables: 1 Open tables: 6 Queries per second avg: 0.008
使用命令“mysql”啟動mysql客戶端,連接MySQL服務器
#./bin/mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 14 to server version: 5.0.51a Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
在MySQL客戶端中輸入“select 1+1”進行測試,如下所示:
mysql> select 1+1 -> ; +-----+ | 1+1 | +-----+ | 2 | +-----+ 1 row in set (0.00 sec)
可以看到,MySQL給出了正確的計算結果。在MySQL客戶端提示符下輸入命令“exit”或“quit”或按鍵盤“Ctrl+C”,可以從MySQL客戶端中退出。
(6)設置開機自動運行
將子目錄support-files下的文件mysql.server換名復制到/etc/rc.d/init.d目錄中,且重命名為“mysqld”,如下所示:
# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld cp:是否覆蓋“etc/rc.d/init.d/mysqld”? y
修改文件/etc/rc.d/init.d/mysqld的權限,如下所示:
# chmod 700 /etc/rc.d/init.d/mysqld
使用chkconfig命令可以設置在不同系統運行級別下的自啟動策略。chkconfig命令的用法如下所示:
# chkconfig --help chkconfig 版本 1.3.8 - 版權 (C) 1997-2000 Red Hat, Inc. 在GNU公共許可的條款下,本軟件可以自由發行。 用法: chkconfig --list [name] chkconfig --add <name> chkconfig --del <name> chkconfig [--level <levels>] <name> <on|off|reset>)
使用“chkconfig --add”命令設置當前系統運行狀態下(即系統運行狀態5)開機自啟動,命令如下所示:
# chkconfig --add mysqld
使用“chkconfig --list”命令檢查設置:
# chkconfig --list mysqld mysqld 0:關閉 1:關閉 2:關閉 3:關閉 4:關閉 5:啟動 6:關閉
可以看到,在系統運行狀態5,即圖形模式下,已經設定自動啟動MySQL。
7.4.5 安裝Apache
(1)在安裝Apache之前首先應檢查系統中是否已經安裝了Apache。如果已經安裝,應先卸裁低版本的Apache,然后再安裝。軟件包的檢查只需在終端窗口中運行命令:
# rpm -qa | grep -i httpd
如果顯示任何內容,則表示已安裝相關軟件包,可使用“rpm -e”命令進行刪除,也可以使用下面命令對多個相關的軟件包進行統一刪除:
#for i in 'rpm -qa|grep -i httpd' >do rpm -e $i --nodeps >done
接下來,開始Apache新版本的安裝。
(2)對源碼包文件解壓并創建安裝目錄,命令行如下所示:
//將httpd-2.2.8.tar.gz解壓到當前目錄httpd-2.2.8中 #tar -zvxf httpd-2.2.8.tar.gz //改變當前目錄為httpd-2.2.8 #cd httpd-2.2.8 //建立Apache的安裝目錄 #mkdir -p /usr/local/apache
(3)使用“configure”命令生成安裝配置文件,命令行如下所示:
# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-track-vars --enable-rewrite --with-z-dir=/usr/local/zlib Configuring Apache httpd ... adding "-I." to INCLUDES adding "-I$(top_srcdir)/os/$(OS_DIR)" to INCLUDES adding "-I$(top_srcdir)/server/mpm/$(MPM_SUBDIR_NAME)" to INCLUDES ... ...
(4)使用“make”命令編譯并生成安裝文件,命令行如下所示:
# make -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/soft/httpd-2.2.8/httpd-2.2.8/srclib/pcre -I. -I/soft/httpd-2.2.8/httpd-2.2.8/os/unix -I/soft/httpd-2.2.8/httpd-2.2.8/server/mpm/prefork ... ...
(5)使用“make install”命令進行安裝,命令行如下所示:
# make install mkdir /usr/local/apache/cgi-bin Installing header files Installing build system files Installing man pages and online manual mkdir /usr/local/apache/man mkdir /usr/local/apache/man/man1 mkdir /usr/local/apache/man/man8 mkdir /usr/local/apache/manual ... ...
(6)啟動并測試
啟動Apache,命令如下所示:
# /usr/local/apache/bin/apachectl start
打開瀏覽器,在地址欄中輸入服務器的IP地址“http://xxx.xxx.xxx.xxx”(示例中為192.168.127.2),如果顯示如圖7-11所示內容,即表示Apache已經正常啟動。

圖7-11 Apache已經正常啟動
★ 注意 ★
Apache安裝完畢后,默認的網站根目錄為/usr/local/apache/htdocs
(7)設置開機自啟動
使用“echo”命令向/etc/rc.d/rc.local文件中寫入啟動信息,命令如下:
# echo "/usr/local/apache/bin/apachectl start">>/etc/rc.d/rc.local
檢查rc.loacl文件中是否已寫入自啟動項,命令如下所示:
# cat /etc/rc.d/rc.local #!/bin/sh # # This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don't # want to do the full Sys V style init stuff. touch /var/lock/subsys/local /usr/local/apache/bin/apachectl start //已寫入自啟動項
7.4.6 安裝PHP
1.安裝libxml2
PHP對XML的支持是建立在libxml2庫基礎上的,在安裝PHP5.2之前需要先安裝libxml2。
(1)對源碼包文件解壓并創建安裝目錄,命令行如下所示:
//將libxml2-2.6.19.tar.gz解壓到當前目錄libxml2-2.6.19中 #tar -zvxf libxml2-2.6.19.tar.gz //改變當前目錄為libxml2-2.6.19 #cd libxml2-2.6.19 //建立PHP的安裝目錄 #mkdir -p /usr/local/libxml2
(2)使用“configure”命令生成安裝配置文件,命令行如下所示:
# ./configure --prefix=/usr/local/libxml2 checking build system type... i686-redhat-linux-gnu checking host system type... i686-redhat-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c ... ...
(3)使用“make”命令編譯并生成安裝文件,命令行如下所示:
# make gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/include/python2.2 -I../include -I../include -I../python -g -O2 -pedantic -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -MT libxml.lo -MD -MP -MF .deps/libxml.Tpo -c libxml.c -fPIC -DPIC -o .libs/libxml.o ... ...
(4)使用“make install”命令進行安裝,命令行如下所示:
# make install make[3]: Leaving directory '/soft/libxml2-2.6.19/libxml2-2.6.19/python' make[2]: Leaving directory '/soft/libxml2-2.6.19/libxml2-2.6.19/python' Making install in tests ... ...
(5)復制配置文件xml2-config到/usr/bin目錄下,如下所示:
# cp xml2-config /usr/bin cp:是否覆蓋‘/usr/bin/xml2-config’? y
2.安裝PHP5
(1)在安裝PHP5之前首先應檢查系統中是否已經安裝了低版本的PHP。如果已經安裝,應先進行卸裁,然后再安裝。軟件包的檢查只需在終端窗口中運行命令:
# rpm -qa | grep -i php
如果顯示任何內容,則表示已安裝相關軟件包,可使用“rpm -e”命令進行刪除,也可以使用下面命令對多個相關的軟件包進行統一刪除:
#for i in 'rpm -qa|grep -i php' >do rpm -e $i --nodeps >done
接下來,開始PHP新版本的安裝。
(2)對源碼包文件解壓并創建安裝目錄,命令行如下所示:
//將php-5.2.5.tar.gz解壓到當前目錄php-5.2.5中 #tar -zvxf php-5.2.5.tar.gz //改變當前目錄為php-5.2.5 #cd php-5.2.5 //建立PHP的安裝目錄 #mkdir -p /usr/local/php
(3)使用“configure”命令生成安裝配置文件,命令行如下所示:
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-libxml-dir=/usr/local/libxml2 --with-png-dir=/usr/local/lib --with-jpeg-dir=/usr/local/jpeg6 --with-zlib-dir=/usr/local/zlib --with-freetype-dir=/usr/local/freetype --with-gd=/usr/local/gd --enable-soap --enable-mbstring=all Generating files updating cache ./config.cache creating ./config.status ... ... +--------------------------------------------------------------------+ | License: | | This software is subject to the PHP License, available in this | | distribution in the file LICENSE. By continuing this installation | | process, you are bound by the terms of this license agreement. | | If you do not agree with the terms of this license, you must abort | | the installation process at this point. | +--------------------------------------------------------------------+ Thank you for using PHP.
(4)使用“make”命令編譯并生成安裝文件,命令行如下所示:
# make /bin/sh/soft/php-5.2.5/php-5.2.5/libtool--silent--preserve-dup-deps--mode=compile gcc -Imain/ -I/soft/php-5.2.5/php-5.2.5/main/ -DPHP_ATOM_INC -I/soft/php-5.2.5/php-5.2.5/include -I/soft/php-5.2.5/php-5.2.5/main -I/soft/php-5.2.5/php-5.2.5 -I/usr/local/libxml2/include/libxml2 -I/usr/local/zlib/include -I/soft/php-5.2.5/php-5.2.5/ext/date/lib -I/usr/local/jpeg6/include -I/usr/local/include -I/usr/local/freetype/include ... ...
(5)使用“make test”命令對編譯結果進行測試,命令行如下所示:
# make test PASS version string [sapi/cli/tests/001.phpt] SKIP running code with -r [sapi/cli/tests/002-win32.phpt] reason: only for Windows PASS running code with -r [sapi/cli/tests/002.phpt] PASS defining INI options with -d (as 2nd arg) [sapi/cli/tests/003-2.phpt] ... ... ===================================================================== TIME END 2008-01-21 21:23:22 ===================================================================== TEST RESULT SUMMARY --------------------------------------------------------------------- Exts skipped : 52 Exts tested : 27 --------------------------------------------------------------------- Number of tests : 4566 3611 Tests skipped : 955 ( 20.9%) -------- Tests warned : 3 ( 0.1%) ( 0.1%) Tests failed : 6 ( 0.1%) ( 0.2%) Tests passed : 3602 ( 78.9%) ( 99.8%) --------------------------------------------------------------------- Time taken : 491 seconds ... ...
(6)使用“make install”命令進行安裝,命令行如下所示:
# make install Installing PHP SAPI module: apache2handler /usr/local/apache/build/instdso.sh SH_LIBTOOL='/usr/local/apache/build/libtool' libphp5.la /usr/local/apache/modules /usr/local/apache/build/libtool --mode=install cp libphp5.la /usr/local/apache/modules/ cp .libs/libphp5.so /usr/local/apache/modules/libphp5.so cp .libs/libphp5.lai /usr/local/apache/modules/libphp5.la ... ...
(7)建立php配置文件。將當前目錄下的文件php.ini-dist換名復制到/usr/local/php/lib目錄下,且重命名為php.ini,如下所示:
# cp php.ini-dist /usr/local/php/lib/php.ini
(8)修改Apache配置文件httpd.conf,添加PHP支持。使用vi打開/etc/httpd/httpd.conf文件,找到“#AddType application/x-gzip .tgz”項,在其下方添加“AddType application/x-httpd-php .php”,如下所示:
# vi /etc/httpd/httpd.conf ... ... <IfModule mime_module> # # TypesConfig points to the file containing the list of mappings from # filename extension to MIME-type. # TypesConfig /etc/httpd/mime.types # # AddType allows you to add to or override the MIME configuration # file specified in TypesConfig for specific file types. # #AddType application/x-gzip .tgz AddType application/x-httpd-php .php //添加對PHP的支持 # AddEncoding allows you to have certain browsers uncompress # information on the fly. Note: Not all browsers support this. # #AddEncoding x-compress .Z #AddEncoding x-gzip .gz .tgz # # If the AddEncoding directives above are commented-out, then you # probably should define those extensions to indicate media types: # ... ...
(9)建立簡單的PHP測試文件,對PHP進行測試。在/usr/local/apahce/htdocs目錄下建立test.php文件,內容如下所示:
<?php phpinfo( ); ?>
在瀏覽器中運行該文件,如果出現如圖7-12所示內容,則表示PHP安裝成功。

圖7-12 PHP安裝成功
從圖7-12可以看到,當前PHP的版本已升級為5.2.5。安裝時執行的配置命令為“./configure--prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql -with-libxml-dir=/usr/local/libxml2 --with-png-dir=/usr/local/lib --with-jpeg-dir=/usr/local/jpeg6 --with-zlib -dir=/usr/local/zlib --with-freetype-dir=/usr/local/freetype --with-gd=/usr/local/gd --enable-soap -- enable-mbstring
=all”。拖動圖7-12中右側滾動條,還可以查看到Apache的相關信息,如圖7-13所示。

圖7-13 Apache配置信息
從圖7-13可以看到,當前Apache的版本號為2.2.8,系統根目錄為“/usr/local/apache”,Apache API版本號為“20051115”。繼續拖動右側滾動條,查看MySQL的相關信息如圖7-14所示。

圖7-14 MySQL的配置信息
從圖7-14可以看到,當前MySQL的版本已升級為5.0.51,MySQL_SOCKET目錄被設定為“/tmp/mysql.sock”。繼續拖動右側滾動條,查看GD庫的相關配置信息如圖7-15所示。

圖7-15 GD庫配置信息
從圖7-15可以看到,當前GD版本為2.0,且支持“FreeType”、“GIF”、“JPG”、“PNG”和“WBMP”。
7.4.7 安裝Firefox
Firefox2的安裝相對容易。
(1)首先將Firefox2.0中文版壓縮包firefox-2.0.0.9.zh-CN.linux-i686.tar.gz解壓。命令如下所示:
#tar zxvf firefox-2.0.0.9.zh-CN.linux-i686.tar.gz
(2)打開解壓后的目錄窗口,如圖7-16所示。

圖7-16 Firefox解壓后目錄
(3)雙擊目錄中名為“firefox”的文件,在彈出的如圖7-17所示對話框中選擇【運行】即可。

圖7-17 選擇【運行】Firefox
- 我的J2EE成功之路
- Ansible Quick Start Guide
- 教父母學會上網
- TestStand工業自動化測試管理(典藏版)
- 21天學通ASP.NET
- 工業機器人入門實用教程(KUKA機器人)
- 視覺檢測技術及智能計算
- 樂高機器人—槍械武器庫
- Grome Terrain Modeling with Ogre3D,UDK,and Unity3D
- PVCBOT機器人控制技術入門
- Excel 2007終極技巧金典
- Dreamweaver+Photoshop+Flash+Fireworks網站建設與網頁設計完全實用
- 大數據:引爆新的價值點
- 從祖先到算法:加速進化的人類文化
- Mastering Windows Group Policy