歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> CentOS軟件包管理之源碼安裝

CentOS軟件包管理之源碼安裝

日期:2017/2/28 14:35:39   编辑:Linux教程

源代碼編譯安裝概述:
源代碼編譯安裝顧名思義就是使用源代碼在本地計算機編譯安裝的過程。

使用源代碼安裝軟件的優點:
獲得最新的軟件版本,及時修復bug
根據用戶需要,靈活定制軟件功能

源代碼包的格式:
源代碼包為了方便在互聯網上傳播通常被打包壓縮成.tar.gz或.tar.bz2的格式,現在也有最新的.tar.xz的格式。所以源代碼包也被稱作Tarball.

//httpd源碼包
[root@localhost ~]# ls -l httpd-2.4.7.tar.bz2
-rw-r--r--. 1 root root 5004719 Feb 28 12:47 httpd-2.4.7.tar.bz2

源碼包的驗證:
由於大部分源碼包都是直接在互聯網上提供,為了避免下載到被惡意串改的源碼包或軟件包下載過程中被人惡意串改,我們有必要對下載的源碼包進行完整性驗證。

//下面為apache官網提供的httpd源碼包MD5值
http://www.apache.org/dist/httpd/httpd-2.4.7.tar.bz2.md5
170d7fb6fe5f28b87d1878020a9ab94e *httpd-2.4.7.tar.bz2
//下面是我們通過CentOS自帶md5計算工具計算出來的httpd源碼包MD5值
[root@localhost ~]# md5sum httpd-2.4.7.tar.bz2
170d7fb6fe5f28b87d1878020a9ab94e httpd-2.4.7.tar.bz2
//兩者相比一致,說明包沒有被惡意串改

源碼包安裝的前提條件:
將源代碼包安裝到本地計算機上需要滿足下列兩個基本條件:

1、要有相應包的解包工具(tar、bzip2等),一般情況這些工具在系統安裝的時候會自動安裝。
2、要有編譯環境,一般情況系統不會自動安裝,需要手動進行安裝。在RHEL6系統上,
可以通過使用yum groupinstall命令安裝。

[root@localhost ~]# yum groupinstall "Desktop Platform Development" "Development tools" "Server Platform Development"

源碼安裝httpd:

1、將httpd-2.4.7.tar.bz2解包,並進入解壓出來的目錄

[root@localhost ~]# tar xf httpd-2.4.7.tar.bz2
[root@localhost ~]# cd httpd-2.4.7
[root@localhost httpd-2.4.7]# pwd
/root/httpd-2.4.7

2、查看說明文檔和安裝文檔

[root@localhost httpd-2.4.7]# less README
[root@localhost httpd-2.4.7]# less INSTALL

3、./configure配置

//查看configure選項,常用選項為--prefix指定安裝目錄,如果不跟任何參數則安裝至默認目錄
[root@localhost httpd-2.4.7]# ./configure --help
//將httpd安裝至/usr/local/httpd目錄
[root@localhost httpd-2.4.7]# ./configure --prefix=/usr/local/httpd
//完成後沒有任何錯誤提示則可以進行下一步
config.status: creating build/rules.mk
config.status: creating build/pkg/pkginfo
config.status: creating build/config_vars.sh
config.status: creating include/ap_config_auto.h
config.status: include/ap_config_auto.h is unchanged
config.status: executing default commands
[root@localhost httpd-2.4.7]#

4、make和make install

//使用make命令編譯
[root@localhost httpd-2.4.7]# make
//編譯完成後正常退出,沒有任何錯誤提示則可以進行安裝
make[1]: Leaving directory `/root/httpd-2.4.7'
[root@localhost httpd-2.4.7]#
//將編譯完的包使用makeinstall命令安裝
[root@localhost httpd-2.4.7]# make install
//安裝完成後正常退出,沒有任何錯誤提示則說明安裝完成
make[1]: Leaving directory `/root/httpd-2.4.7'
[root@localhost httpd-2.4.7]#

5、添加httpd相關目錄到系統默認搜索路徑

//將httpd二進制文件添加至系統PATH變量
[root@localhost httpd-2.4.7]# vim /etc/profile.d/httpd.sh
1 export PATH=/usr/local/httpd/bin:$PATH
//添加完成手動完成一次環境變量導出
[root@localhost httpd]# . /etc/profile
//本次安裝httpd沒有自帶庫文件,如果有自帶庫文件需將自帶庫目錄添加至系統庫配置文件中
[root@localhost httpd-2.4.7]# vim /etc/ld.so.conf.d/httpd.conf
1 /usr/local/httpd/lib
//添加完成後重新搜索庫文件並生成緩沖
[root@localhost httpd]# ldconfig
//將httpd自帶頭文件鏈接至系統頭文件目錄
[root@localhost httpd-2.4.7]# ln -s /usr/local/httpd/include/ /usr/include/httpd
[root@localhost ~]# ls -l /usr/include/httpd
lrwxrwxrwx. 1 root root 25 Feb 28 15:16 /usr/include/httpd -> /usr/local/httpd/include/
//將httpd自帶man手冊路徑添加至系統man配置文件
[root@localhost ~]# grep "/usr/local/httpd" /etc/man.config
MANPATH /usr/local/httpd/man

6、啟動httpd

[root@localhost ~]# apachectl start
//驗證80端口是否處於監聽狀態
[root@localhost ~]# netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1550/rpcbind
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1767/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1640/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1930/master
tcp 0 0 0.0.0.0:38758 0.0.0.0:* LISTEN 1568/rpc.statd
tcp 0 0 :::111 :::* LISTEN 1550/rpcbind
tcp 0 0 :::80 :::* LISTEN 13748/httpd
tcp 0 0 :::22 :::* LISTEN 1767/sshd
tcp 0 0 ::1:631 :::* LISTEN 1640/cupsd
tcp 0 0 ::1:25 :::* LISTEN 1930/master
tcp 0 0 :::33114 :::* LISTEN 1568/rpc.statd

7、通過網頁訪問

總結,以上就是源代碼包安裝的全過程。源代碼是一個Linux管理員必備的技能,很多服務為了有更好的性能只能通過源代碼包安裝。

更多CentOS相關信息見CentOS 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=14

Copyright © Linux教程網 All Rights Reserved