安卓開啟rpm檔案 RPM專用包管理器

2021-10-14 14:41:10 字數 4196 閱讀 2055

rpm,redhat package manager,即為紅帽公司為rhel開發的專用包管理器,後來更改為rpm package manager,類似於gnu專案,使用遞迴命名,gnu's not unix.

一、rpm包與軟體包的區別

1、軟體包分類

原始碼包:c源**包

rpm包:編譯之後的二進位製包

2、原始碼包

優點:開源;可以自由選擇所需功能;可看源**;解除安裝方便(直接刪除安裝位置);

缺點:安裝步驟過多;編譯時間過長;

3、rpm包

優點:使用簡單,只需要幾個命令就可以實現包的安裝、公升級、查詢、解除安裝;安裝速度快;

缺點:不能看源**;功能選擇不如源**靈活;依賴性;

二、rpm包命名和依賴性

httpd --->軟體包名

2.4.6--->軟體版本

67--->軟體發行的次數

el7.centos--->適合的linux平台

x86_64--->適合的硬體平台

rpm--->rpm包副檔名

2、rpm包的依賴性

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

環形依賴:a -> b -> c -> a

模組依賴:模組依賴查詢**:www.rpmfind.com

三、rpm包的安裝、公升級、解除安裝、查詢

1、包全名和包名

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

操作的包時沒有安裝的軟體包時,使用包全名--->操作的已經安裝的軟體包時,使用包名

安裝、公升級時用--->查詢、解除安裝時用

2、rpm安裝

#rpm包的安裝格式

rpm -ivh 包全名

選項:-i(install) 安裝

-v(verbose) 顯示詳細資訊

-h(hash) 顯示進度

--nodeps 不檢測依賴性

可能會有很多依賴性問題出現,根據乙個個依賴性繼續rpm安裝就可以了

錯誤:開啟 httpd-2.4.6-89.el7.centos.x86_64 失敗: 沒有那個檔案或目錄

錯誤:依賴檢測失敗:

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

準備中... ################################# [100%]

正在公升級/安裝...

3、rpm包公升級

#rpm包的公升級格式

rpm -uvh 包全名

選項:-u (upgrade) 公升級

過程和安裝完全一樣。

4、rpm包的解除安裝

#rpm包的解除安裝格式

rpm -e 包名

選項:-e (erase) 解除安裝

--nodeps 不檢測依賴性

注:解除安裝要按照安裝依賴性的反向解除安裝

5、rpm包的查詢

¥¥¥查詢是否安裝:

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

選項:-q 查詢(query)

¥¥¥查詢所有已經安裝的rpm包

選項:-a 所有

¥¥¥查詢軟體包的詳細資訊:

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

選項:-i 查詢軟體資訊(information)

install date: 2023年07月12日 星期五 22時26分27秒

group : system environment/daemons

size : 9817301

license : asl 2.0

signature : rsa/sha256, 2023年04月29日 星期一 23時45分07秒, key id 24c6a8a7f4a80eb5

build date : 2023年04月24日 星期三 21時48分37秒

¥¥¥查詢包中檔案安裝位置

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

選項:-l 列表(list)

¥¥¥查詢系統檔案屬於哪個rpm包

[root@localhost ~]# rpm -qf 系統檔名

選項:-f 查詢系統檔案屬於哪個rpm包(file)

檔案 /root/mypackages/httpd-2.4.6-89.el7.centos.x86_64.rpm 不屬於任何軟體包

¥¥¥查詢軟體包的依賴性

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

選項:-r 查詢軟體包的依賴性(requires)

rpm包提取檔案

今天在群裡聽見朋友們在討論如何恢復被損壞的network指令碼檔案,其中提到乙個很好的方法就是可以提取系統安裝盤裡rpm包檔案裡的檔案來覆蓋被損壞的指令碼,這一點很像恢復windows系統裡被損壞檔案的方法。下面把如何提取rpm包裡檔案而不需要安裝rpm包的方法共享一下 比如你要提取test.rpm...

不安裝rpm包,取出rpm包裡的檔案

1 檢視rpm包裡的檔案 root vm 166 132 rpm qlp mysql5.6.29 1 3.x86 64.rpm more etc ld.so.conf.d mysql 5.6.23 compiled x86 64.conf usr local lib libjemalloc.a us...

Linux下安裝RPM檔案包

2.如何安裝.src.rpm軟體包 有些軟體包是以.src.rpm結尾的,這類軟體包是包含了源 的rpm包,在安裝時 需要進行編譯。這類軟體包有兩種安裝方法,方法一 1.執行rpm i your package.src.rpm 2.cd usr src redhat specs 3.rpmbuild...