Linux RPM軟體包管理最新詳解

2021-10-07 12:24:00 字數 3173 閱讀 5462

軟體管理器:可以對軟體包進行乙個集中的管理,幫助使用者搜尋、安裝、管理軟體包

rpm全名是【redhat package manager】縮寫則為rpm。顧名思義,當初這個軟體管理的機制是由red hat這家公司發展出來的。rpm是以一種資料庫記錄的方式來將你所需要的軟體安裝到你的linux系統的一套軟體管理機制。

由於rpm是通過預先編譯並打包成為rpm檔案格式後,再加以安裝的一種方式,並且還能夠進行資料庫的記錄。所以rpm有以下的優點:

rpm軟體包包含編譯過的程式與配置檔案,使用者不需要編譯,rpm包在安裝之前,會先檢查系統的硬軟體環境,避免被錯誤安裝。

掛載光碟映象:掛載:mount 待掛載映象 掛載點解除安裝:umount 掛載點示例:

# 掛載光碟映象,並檢視映象中有什麼軟體包

[root@localhost ~]

# mount /dev/sr0 /media

[root@localhost ~]

# ls /media/packages/

例:zsh-5.0.2-25.el7.x86_64.rpmzsh

-5.0

.2-25

.e17

.x86_64

軟體名主版本

次版本修訂號

第幾次發布

作業系統版本

x86架構的64位

rpm工具使用分為安裝、查詢、驗證、更新、刪除等操作

命令格式rpm [引數] 軟體包

常用引數:

引數說明

-i是install的意思, 安裝軟體包(需要輸入軟體包全名)

-u公升級包

-e是刪除軟體包(只需輸入包名即可)

-v-v

校驗,對已經安裝的軟體進行校驗

-h (-hash)

安裝時輸出####標記和安裝百分比

ps:在安裝或公升級的時候是用的軟體包全名,在刪除時只使用包名

示例:

[root@localhost ~]

# rpm -ivh /media/packages/zsh-5.0.2-25.el7.x86_64.rpm #安裝zsh包

[root@localhost ~]

# rpm -e zsh #刪除包

補充:軟體包依賴關係
rpm軟體包在進行安裝的時侯容易出問題,主要時包與包之間有依賴關係。依賴包的產生,是因為linux軟體採用共享資源庫的方式,可以減少軟體程式設計的開發量,類似於windows下的各種庫,高手可自行使用相關命令或方式檢視軟體包依賴。(無論是安裝還是解除安裝,都有可能會涉及到包的依賴)

用法:rpm -q(query)常與下面引數組合使用 (q是查詢,通常是和下面的匹配使用)

選項說明

-a(all)

查詢所有已安裝的軟體包

-f(file)

系統檔名(查詢命令所屬哪個軟體包),反向查詢

-i顯示已經安裝的rpm軟體包資訊,後面直接跟包名

-l(list)

查詢軟體包中檔案安裝的位置

-p查詢未安裝軟體包的相關資訊,後面要跟軟體的命名

-r查詢軟體包的依賴性

示例:1、檢視zsh包是否被安裝

[root@localhost ~]

# rpm -q zsh

2、查詢所有已安裝包中帶shell關鍵字的包

[root@localhost ~]

# rpm -qa |grep "shell"

3、查詢我們使用的vim命令是由哪個安裝包安裝的?

[root@localhost ~]

# rpm -qf `which vim`

4、檢視當前本地映象裡的php-mysql包的相關資訊

[root@localhost ~]

# rpm -qpi /media/packages/php-mysql-5.4.16-42.el7.x86_64.rpm

ps:針對沒有安裝的rpm包,要加引數: -p

命令格式:

rpm -v 包名

rpm -vf 檔案路徑

示例:修改zsh二進位制檔案的內容,然後檢視相應資訊

[root@localhost ~]

# rpm -vf `which zsh`

出現下面的字元代表某測試的失敗:

字元說明

5md5 校驗和是否改變,你也看成檔案內容是否改變

s檔案長度,大小是否改變

l符號鏈結,檔案路徑是否改變

t檔案修改日期是否改變d裝置

u使用者,檔案的屬主

g使用者組

m模式 (包含許可和檔案型別)

雖然使用源**進行軟體編譯可以對其進行定製化,但對於提供linux發行版的公司或社群來說,軟體的管理是個不易得問題,畢竟不是每個人都會進行源**的編譯。如果能夠將軟體預先在相同的硬體與作業系統上面編譯好才發布的話,就能夠讓相同的linux發行版具有完全一致的軟體版本。rpm與yum能夠很好的實現軟體管理!本章我們只說了rpm,下一章我們將講講功能更加便捷的yum。

好了,如果對你有所幫助的話,就是對博主創作的最好支援!如有不足,還請雅正!

linux rpm軟體包管理器

rpm包 的 查詢命令 選項英文 含義 q query 查詢 a all所有 iinfo 資訊 l list 顯示所有相關檔案 ffile 檔案,顯示檔案對應 rpm 包 rpm qa grep rpm qa less rpm qi 軟體全包名rpm ql 軟體全包名rpm qf 檔案的全路徑rpm...

軟體包管理

軟體源 ete apt sources.list.d 軟體源索引 var lib apt lists 狀態資訊 var lib dpkg statustonny tonny ftt apt cache pkgnames wc l 軟體包的數目 tonny tonny ftt apt cache po...

軟體包管理

使用rpm命令管理軟體rpm q 軟體包 查詢軟體包 rpm ivh 軟體名 版本號.rpm 安裝 rpm e 軟體名 解除安裝 rpm ql 軟體名 檢視已安裝清單補充 匯入紅帽簽名資訊 rpm import 路徑.rpm gpg key redhat release rpm ivh vh 顯示進...