天天看點

解析CentOS7應用程式安裝及管理

一、linux應用程式基礎

1、應用程式與系統命的關系

(1)檔案位置

系統指令:一般在/bin和/sbin目錄中,或為 shell内部指令

應用程式:通常在/usr/bin和/usr/sbin目錄中

(2)主要用途

系統指令:完成對系統的基本管理工作,例如p配置工具

應用程式:完成相對獨立的其他輔助任務,例如網頁浏覽器

(3)适用環境

系統指令:一般隻在字元操作界面中運作

應用程式:根據實際需要,有些程式可在圖形界面中運作

(4)運作格式

系統指令:一般包括指令字、指令選項和指令參數

應用程式:通常沒有固定的執行格式

2、典型應用程式的目錄結構

解析CentOS7應用程式安裝及管理

(1)普通的可執行程式檔案。一般儲存在“/usr/in”目錄中,普通使用者即可執行。

(2)伺服器程式、管理程式檔案。一般儲存在“/usr/sbin”目錄中,隻有管理者能執行。

(3)配置檔案。一般儲存在“/etc”目錄中,配置檔案較多時會建立相應的子目錄。

(4)日志檔案。一般儲存在“/var/log”目錄中

(5)關于應用程式的參考文檔等資料。一般儲存在“/usrr/share/doc/”目錄中。

(6)執行檔案及配置檔案的man手冊頁。一般儲存在/usr/share/man/”目錄中。

3、常見的軟體包封裝類型

解析CentOS7應用程式安裝及管理

二、rpm包管理工具

rpm package manager

由red hat公司提出,被衆多 linux發行版所采用

建立統一的資料庫檔案

詳細記錄軟體包安裝、解除安裝等變化資訊

自動分析軟體包依賴關系

rpm軟體包

軟體素材參考 : http://www.rpm.org

一般命名格式:bash-4.1.2-15.el64.x86_64.rpm

解析CentOS7應用程式安裝及管理

三、查詢rpm軟體包資訊

1、查詢已安裝的rpm軟體資訊

解析CentOS7應用程式安裝及管理

常見的幾個子選項:

(1)-qa:顯示目前系統中以rpm方式安裝的所有軟體清單

如圖我們執行“rpm -qa | head-5”指令去檢視軟體清單的前五行。

解析CentOS7應用程式安裝及管理

(2)-qi:檢視指定軟體包的名稱、版本、許可協定、用途描述等詳細資訊(--info)

如圖我們在之前軟體檢視軟體清單的基礎上執行“rpm -qi +任意一個軟體包名稱”的指令去檢視它的詳細資訊。

解析CentOS7應用程式安裝及管理

(3)-q1:顯示指定的軟體包在目前系統中安裝的所有目錄、檔案清單(--list)

如圖我們執行“rpm -ql +軟體包的名稱”的指令來顯示該軟體包在目前系統中安裝的使用目錄資訊。

解析CentOS7應用程式安裝及管理

(4)-qf:檢視指定的檔案或目錄是由哪個軟體包所安裝的(--file)

如圖我們執行“rpm -qf /usr/bin/vim”的指令去檢視vim目錄所有那個軟體包安裝的。

解析CentOS7應用程式安裝及管理

(5)-qc:檢視出軟體包的配置檔案

如圖我們執行“rpm -qc +軟體包的名稱”的指令去檢視此軟體包的配置檔案。

解析CentOS7應用程式安裝及管理

(6)-qd:檢視軟體封包檔手冊

如圖我們執行“rpm -qd +軟體包的名稱”的指令去檢視此軟體封包檔手冊。

解析CentOS7應用程式安裝及管理

2、查詢未安裝的rpm軟體封包件資訊

解析CentOS7應用程式安裝及管理

常用的幾個字選項:“-qpi、-qpl、-qpc、-qpd”,這些子選項的使用方法與上述的方法一樣操作。

四、安裝、更新解除安裝rpm軟體包

1、安裝或更新rpm軟體包

解析CentOS7應用程式安裝及管理

(1)-i:在目前系統中安裝(install)一個新的rpm軟體包。

(2)-e:解除安裝指定名稱的軟體包。

(3)-u:檢查并更新系統中的某個軟體包,若該軟體包原來并未安裝,則等同于“-i”選項。

(4)-f:檢查并更新系統中的某個軟體包,若該軟體包原來并未安裝,則放棄安裝。還有幾個相關的指令選項,可以用于輔助安裝、解除安裝軟體包的過程。

(5)-- force:強制安裝某個軟體包,當需要替換現已安裝的軟體包及檔案,或者安裝一個比目前使用的軟體版本更舊的軟體時,可以使用此選項。

(6)--nodeps:在安裝或更新、解除安裝一個軟體包時,不檢查與其他軟體包的依賴關系。

(7)-h:在安裝或更新軟體包的過程中,以“#”号顯示安裝進度。

(8)-v:顯示軟體安裝過程中的詳細資訊。

五、維護rpm資料庫

1、重建rpm資料庫

解析CentOS7應用程式安裝及管理

用于記錄在 linux系統中安裝、解除安裝、更新應用程式的相關資訊,由rpm包管理系統自動完成維護,一般不需要使用者幹預。當rpm資料庫發生損壞(誤删檔案、非法關機、病毒破壞等導緻),且 linux系統無法自動完成修複時,将導緻無法使用rpm指令正常地安裝、解除安裝及查詢軟體包。這時可以使用rpm指令的“--rebuilddb或“-initdb-”功能對rpm資料庫進行重建。

2、導入驗證公鑰

解析CentOS7應用程式安裝及管理

六、解決軟體包依賴關系方法

1、安裝有依賴關系的多個軟體時

被依賴的軟體包需要先安裝

可同時指定多個rpm封包件進行安裝

2、解除安裝有依賴關系的多個軟體時

依賴其他程式的軟體包需要先解除安裝

可同時指定多個軟體名進行解除安裝

3、忽略依賴關系

結合nodeps”選項,但可能導緻軟體異常

七、源代碼編譯

使用源代碼安裝軟體的優點

獲得最新的軟體版本,及時修複bug

根據使用者需要,靈活定制軟體功能

應用場合舉例

安裝較新版本的應用程式時

目前安裝的程式無法滿足需要時

需要為應用程式添加新的功能時

八、編譯安裝源代碼包

解析CentOS7應用程式安裝及管理

九、編譯安裝過程

解析CentOS7應用程式安裝及管理

後期會出一些手工編譯的文檔,屆時請來捧場噢,謝謝!