Linux有多種發行版本,各種發行版本之間安裝軟件包的方法和命令不一樣,同發行版本之間安裝軟件包的方法也有不同。Linux主要有三大派系:紅帽子派系(Redhat、Centos、Oracle Linux)、Debian派(Ubuntu、Kali),SUSE派系(SuSe、OpenSUSE)等。
紅帽子派是Linux服務器操作系統的主流,本文重點介紹紅帽子派系中rpm和yum安裝軟件包的方法。
一、rpm安裝
RPM是RedHat Package Manager的縮寫,由RedHat推出的軟件包管理管理工具,在Fedora、Redhat、CentOS、Mandriva、SuSE、YellowDog等主流發行版本,以及在這些版本基礎上二次開發出來的發行版采用。
RPM包里面包含可執行的二進制程序,自身所帶的附加文件,版本文件(軟件包的依賴關系)。
1、查看系統中已安裝的軟件包
1)查看已安裝的軟件包。
rpm -q 軟件包名
例如查看ftp客戶端和ftp服務端軟件包:
2)查看軟件包安裝的目錄和文件(包括了可執行程序、配置文件和幫助文檔)。
rpm -ql 軟件包名
例如查看ftp客戶端:
rpm -ql ftp
3)查看已安裝軟件包的詳細信息。
rpm -qi 軟件包名
例如查看ftp客戶端(顯示內容太多,部分截圖):
4)查看已安裝軟件包的配置。
rpm -qc 軟件包名
例如查看ftp服務端:
5)查看已安裝軟件包所依賴的軟件包及文件。
rpm -qR 軟件包名
例如查看ftp客戶端(顯示內容太多,部分截圖):
2、查看軟件包的安裝文件
安裝包文件的后綴是.rpm,以CentOS7為例,系統安裝的光盤映像文件是CentOS-7-x86_64-DVD-1908.iso,解開后在Packages目錄中有軟件包的安裝文件,如下:
接下來以ftp的客戶端安裝包文件ftp-0.17-67.el7.x86_64.rpm為例來介紹安裝包文件的查看方法。
1)查看一個軟件包的安裝文件的詳細信息。
rpm -qpi 軟件包的安裝文件名
(顯示內容太多,部分截圖)
2)查看軟件包的安裝文件所包含的文件。
rpm -qpl 軟件安裝包文件名
3)查看軟件包的依賴關系。
rpm -qpR 軟件包的安裝文件名
(顯示內容太多,部分截圖)
3、安裝/升級軟件包
如果待安裝/升級的軟件與其它的軟件有依賴關系,請解決依賴關系,即先安裝/升級依賴關系的軟件包。如果沒有解決好依賴關系,可以強制安裝/升級,不推薦采用強制的方法,因為有可能導致軟件不可用。
1)安裝軟件包。
rpm -ivh 軟件包的安裝文件名
2)升級軟件包。
rpm -Uvh 軟件包的安裝文件名
3)強制安裝軟件包。
rpm -ivh 軟件包的安裝文件名 --nodeps --force
4)強制升級軟件包。
rpv -Uvh 軟件包的安裝文件名 --nodeps --force
4、刪除軟件包
rpm -e 軟件包名
例如刪除ftp客戶端軟件包:
二、yum安裝
rpmp安裝軟件包的雖然方便,但是需要手工解決軟件包的依賴關系。很多時候安裝一個軟件包需要安裝多個其他軟件包,還有不同版本的兼容性問題,很復雜。yum解決了這些問題,yum是rpm的前端程序,設計的主要目的就是為了自動解決rpm的依賴關系,有以下優點:
-
自動解決依賴關系;
-
可以對rpm進行分組,基於組進行安裝操作;
-
引入倉庫概念,支持多個倉庫;
-
配置簡單。
1、yum的語法
yum [options] [command] [package ...]
options:可選參數:1)-h幫助;2)-y,當安裝過程提示選擇全部為yes,不需要再次確認;3)-q,不顯示安裝的過程。
command:待操作的命令。
package:待操作的軟件包名,多個軟件包之間用空格分開,支持用星號*匹配。
2、yum的常用命令
最最常用的命令加粗顯示。
1)安裝/升級軟件包。
yum install 軟件包名/軟件包文件名
2)升級軟件包。
yum update 軟件包名
3)刪除軟件包。
yum remove 軟件包名
4)查找軟件包。
yum search 軟件包名
5)列出所有可更新的軟件包清單。
yum check-update
6)更新所有軟件包。
yum update
7)列出所有可安裝軟件包的清單;
yum list
8)清除緩存。
yum clean [headers|packages|metadata|dbcache|plugins|expire-cache|all]
3、示例
1)安裝/升級ftp客戶端軟件包。
yum -y install ftp
或
yum -y install ftp-0.17-67.el7.x86_64.rpm
2)升級ftp客戶端軟件包
yum -y update ftp
3)刪除ftp客戶端軟件包。
yum -y remove ftp
三、應用經驗
1)rpm安裝/升級軟件包需要手工的解決包的依賴關系,這一點讓人確實很煩,所以,軟件包的安裝/升級一般采用yum命令。
2)rpm的某些功能,例如查看軟件包的詳細信息、軟件包的安裝目錄、軟件包的配置文件等還是有實用價值的。
四、版權聲明
C語言技術網原創文章,轉載請說明文章的來源、作者和原文的鏈接。
來源:C語言技術網(www.freecplus.net)
作者:碼農有道
如果文章有錯別字,或者內容有錯誤,或其他的建議和意見,請您留言指正,非常感謝!!!