RPM

?rpm,Redhat Package Manager,即為紅帽公司為RHEL開(kāi)發(fā)的專用包管理器,后來(lái)更改為RPM Package Manager,類似于GNU項(xiàng)目,使用遞歸命名,GNU's Not Unix.

一、RPM包與軟件包的區(qū)別

1、軟件包分類

源碼包:C源代碼包

rpm包:編譯之后的二進(jìn)制包

2、源碼包

優(yōu)點(diǎn):開(kāi)源;可以自由選擇所需功能;可看源代碼;卸載方便(直接刪除安裝位置);

缺點(diǎn):安裝步驟過(guò)多;編譯時(shí)間過(guò)長(zhǎng);

3、RPM包

優(yōu)點(diǎn):使用簡(jiǎn)單,只需要幾個(gè)命令就可以實(shí)現(xiàn)包的安裝、升級(jí)、查詢、卸載;安裝速度快;

缺點(diǎn):不能看源代碼;功能選擇不如源代碼靈活;依賴性;

二、RPM包命名和依賴性

[root@localhost ~]# httpd-2.4.6-67.el7.centos.x86_64.rpm

httpd ??---> ?軟件包名

2.4.6 ? ?---> ??軟件版本?

67 ? ? ? ?---> ??軟件發(fā)行的次數(shù)?

el7.centos ? ??---> ??適合的linux平臺(tái)?

x86_64 ? ??---> ? ?適合的硬件平臺(tái)?

rpm ? ??---> ? ?rpm包擴(kuò)展名?

2、RPM包的依賴性

樹形依賴性:a -> b -> c,即a依賴b,b依賴c

環(huán)形依賴:a -> b -> c -> a

模塊依賴:模塊依賴查詢網(wǎng)站:www.rpmfind.com

三、RPM包的安裝、升級(jí)、卸載、查詢

1、包全名和包名

包全名包名

例如:httpd-2.4.6-67.el7.centos.x86_64.rpm --->例如:httpd?

操作的包時(shí)沒(méi)有安裝的軟件包時(shí),使用包全名?--->?操作的已經(jīng)安裝的軟件包時(shí),使用包名?

安裝、升級(jí)時(shí)用??--->查詢、卸載時(shí)用?

2、RPM安裝

#rpm包的安裝格式

rpm -ivh 包全名

選項(xiàng):

??? -i(install)??? 安裝

??? -v(verbose)??? 顯示詳細(xì)信息

??? -h(hash)?????? 顯示進(jìn)度

??? --nodeps?????? 不檢測(cè)依賴性

可能會(huì)有很多依賴性問(wèn)題出現(xiàn),根據(jù)一個(gè)個(gè)依賴性繼續(xù)rpm安裝就可以了

[root@localhost mypackages]# rpm -ivh httpd-2.4.6-89.el7.centos.x86_64

錯(cuò)誤:打開(kāi) httpd-2.4.6-89.el7.centos.x86_64 失敗:沒(méi)有那個(gè)文件或目錄

[root@localhost mypackages]# rpm -ivh httpd-2.4.6-89.el7.centos.x86_64.rpm

錯(cuò)誤:依賴檢測(cè)失?。?/p>

httpd-tools = 2.4.6-89.el7.centos 被 httpd-2.4.6-89.el7.centos.x86_64 需要

[root@localhost mypackages]# rpm -ivh httpd-tools-2.4.6-89.el7.centos.x86_64.rpm

準(zhǔn)備中...????????????????????????? ################################# [100%]

正在升級(jí)/安裝...

?? 1:httpd-tools-2.4.6-89.el7.centos? ################################# [100%]

[root@localhost mypackages]#?

3、RPM包升級(jí)

#RPM包的升級(jí)格式

rpm -Uvh 包全名

選項(xiàng):

??? -U (upgrade)??? 升級(jí)

[root@localhost mypackages]# rpm -Uvh httpd-tools-2.4.6-89.el7.centos.x86_64.rpm

過(guò)程和安裝完全一樣。

4、RPM包的卸載

#RPM包的卸載格式

rpm -e 包名

選項(xiàng):

??? -e (erase)??? 卸載

??? --nodeps????? 不檢測(cè)依賴性

[root@localhost mypackages]# rpm -e httpd-2.4.6-89.el7.centos.x86_64.rpm — nodeps

注:卸載要按照安裝依賴性的反向卸載

5、RPM包的查詢

===查詢是否安裝:

[root@localhost ~]# rpm -q 包名

選項(xiàng):

????-q????查詢(query)

[root@localhost mypackages]# rpm -q httpd

httpd-2.4.6-89.el7.centos.x86_64

[root@localhost ~]# rpm -qa

===查詢所有已經(jīng)安裝的RPM包

選項(xiàng):

????-a????所有

[root@localhost mypackages]# rpm -qa httpd

httpd-2.4.6-89.el7.centos.x86_64

?===查詢軟件包的詳細(xì)信息:

[root@localhost ~]# rpm -qi 包名

選項(xiàng):

????-i????查詢軟件信息(information)

[root@localhost mypackages]# rpm -qi httpd

Name??????? : httpd

Version ??? : 2.4.6

Release ??? : 89.el7.centos

Architecture: x86_64

Install Date: 2019年07月12日 星期五 22時(shí)26分27秒

Group ????? : System Environment/Daemons

Size??????? : 9817301

License ??? : ASL 2.0

Signature ? : RSA/SHA256, 2019年04月29日 星期一 23時(shí)45分07秒, Key ID 24c6a8a7f4a80eb5

Source RPM? : httpd-2.4.6-89.el7.centos.src.rpm

Build Date? : 2019年04月24日 星期三 21時(shí)48分37秒

Build Host? :?x86-02.bsys.centos.org

Relocations : (not relocatable)

Packager??? : CentOS BuildSystem <http://bugs.centos.org>

Vendor????? : CentOS

URL ??????? :?http://httpd.apache.org/

Summary ??? : Apache HTTP Server

Description :

The Apache HTTP Server is a powerful, efficient, and extensible

web server.

===查詢包中文件安裝位置

[root@localhost ~]# rpm -ql 包名

#查詢包中文件安裝位置

選項(xiàng):

????-l????列表(list)

[root@localhost mypackages]# rpm -ql httpd

/etc/httpd

/etc/httpd/conf

/etc/httpd/conf.d

===查詢系統(tǒng)文件屬于哪個(gè)RPM包

[root@localhost ~]# rpm -qf 系統(tǒng)文件名

選項(xiàng):

????-f????查詢系統(tǒng)文件屬于哪個(gè)RPM包(file)

[root@localhost mypackages]# rpm -qf httpd-2.4.6-89.el7.centos.x86_64.rpm

文件 /root/mypackages/httpd-2.4.6-89.el7.centos.x86_64.rpm 不屬于任何軟件包

===查詢軟件包的依賴性

[root@localhost ~]# rpm -qR 包名

選項(xiàng):

????-R????查詢軟件包的依賴性(requires)

[root@localhost mypackages]# rpm -qR httpd-2.4.6-89.el7.centos.x86_64.rpm

關(guān)于運(yùn)維學(xué)習(xí)、分享、交流,筆者開(kāi)通了微信公眾號(hào)【運(yùn)維貓】,感興趣的朋友可以關(guān)注下,歡迎加入,建立屬于我們自己的小圈子,一起學(xué)運(yùn)維知識(shí)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容