Linux軟件管理 - RPM工具

Linux軟件管理 - RPM工具

文本關鍵字:Linux、軟件管理、RPM工具、軟件依賴node

1、RPM介紹

1. RPM含義

RPM的全稱是:Red Hat Package Manager,是RPM軟件包管理器。在Linux系統中對應命令是rpm,咱們看到名稱中含有Red Hat,也就說明主要是在Red Hat發行版中使用的,除此以外還包括和Red Hat最親近的CentOS,以及其餘一些主流發行版:SuSE、Fedora等。數據庫

2. RPM特色

  • rpm也是一種打包格式,使用rpm工具來進行管理
  • rpm包是預先已經編譯並打包的文件,安裝較爲方便
  • 存在rpm相關的數據庫,記錄各軟件間的依賴關係
  • 若是缺乏相關依賴,則沒法正常安裝或沒法正常運行
  • 若是逐一尋找依賴,在尋找過程當中可能還有依賴關係,將會變成噩夢
  • 能夠用yum工具解決rpm依賴問題,在後續文章中介紹

3. 軟件包名稱

Linux軟件管理 - RPM工具

  • vim:軟件名稱部分
  • enhanced:軟件組件部分
  • 7:主版本號
  • 4:次版本號
  • 629:修訂號
  • 5:發佈次數
  • el6_10.2:平臺名稱,表示適用於哪一種發行版
  • x86_64:系統位數,i386等表示適用於32位,x86_64表示適用於64位,noarch表示通用

2、經常使用命令

1. 查詢

在進行軟件查詢時,適用rpm工具只能查詢到以rpm軟件包形式安裝的軟件信息,解壓和編譯安裝的軟件沒法查詢到信息。vim

  • q:query的簡寫

(1)查詢已安裝的軟件信息數組

  • rpm -q 準確軟件名稱:查詢某一個已安裝軟件

Linux軟件管理 - RPM工具

  • rpm -qa:顯示已安裝的全部軟件列表

Linux軟件管理 - RPM工具

  • rpm -qi 準確軟件名稱:查詢指定安裝軟件的詳細信息

Linux軟件管理 - RPM工具

  • rpm -ql 準確軟件名稱:查看指定的軟件包在系統中對應的目錄和文件列表

Linux軟件管理 - RPM工具

  • rpm -qf 目錄或文件夾:查看當前指定的文件或目錄對應的軟件包

Linux軟件管理 - RPM工具

  • 不肯定具體名稱時可使用管道和篩選功能:rpm -qa|grep vim

Linux軟件管理 - RPM工具

  • 統計已安裝的軟件包總數:rpm -qa|wc -l

Linux軟件管理 - RPM工具
(2)查詢未安裝的軟件信息
該操做主要是在軟件包安裝以前進行詳細信息的查詢,因此傳入的參數是一個存在的軟件包的路徑。bash

  • rpm -qpi 軟件包完整路徑:查詢待安裝軟件的詳細信息

Linux軟件管理 - RPM工具

  • rpm -qpl 軟件包完整路徑:查詢待安裝軟件的安裝路徑

Linux軟件管理 - RPM工具

2. 驗證

使用-V能夠驗證軟件包的正確性。網絡

  • V:verify的簡寫

(1)經常使用命令ide

  • rpm -V 準確軟件名稱:只有校驗失敗時纔會出現信息
  • rpm -Va:掃描驗證全部軟件包(推薦使用root用戶,不會出現權限問題),列出產生變動的項目、欠佳的依賴關係、缺失的關鍵配置文件等

Linux軟件管理 - RPM工具
(2)信息標識工具

校驗信息的後半部分顯示對應的目錄或文件,前半部分用大寫字母表示產生變更的項目。3d

  • S:大小改變
  • M:權限改變
  • 5:MD5改變
  • L:連接改變
  • D:設備改變
  • U:屬主改變
  • G:數組改變
  • T:修改時間改變

3. 卸載

軟件包的卸載須要使用root用戶來執行,必須完整提供卸載軟件包的名稱,能夠先經過篩選查詢獲取。code

  • e:erase的簡寫(擦除)

在進行卸載操做時,可能有其餘軟件依賴於此軟件,卸載後可能會致使其餘軟件不可用,若是存在依賴關係,則會顯示依賴信息,若是執意要刪除,可使用忽略依賴的選項:--nodeps。

  • rpm -e [--nodeps] 準確軟件名稱:卸載一個已安裝軟件,忽略依賴爲可選項
rpm -e --nodeps vim-enhanced

4. 安裝

軟件包的安裝須要使用root用戶來執行,安裝前通常會先查詢已安裝的相關軟件,並卸載與之衝突的軟件。

  • i:install的簡寫

在進行軟件安裝時,可能系統當中缺乏某個依賴,致使沒法正常安裝,可使用--force選項進行強制安裝,但沒法保證安裝後可以正常使用。常規的解決辦法是先安裝須要的依賴軟件包,再安裝該軟件,或者使用yum工具。

  • rpm -i [--force] 軟件包完整路徑:安裝一個軟件,強制安裝爲可選項
  • rpm -ivh 軟件包完整路徑:經常使用命令,安裝一個軟件,顯示詳細信息和進度(用#表示)

    5. 升級

    與安裝相似,使用root用戶操做來操做,升級某一軟件。

  • U:update的簡寫
  • F:freshen的簡寫

因爲在升級時,舊版本的軟件可能已經安裝,也可能從未安裝,針對這種狀況,提供了兩個參數。

  • U表示:若是對應的軟件包原來未安裝,則直接安裝,和i的效果相同
  • F表示:若是對應的軟件包原來未安裝,則放棄安裝

  • rpm -U/F 軟件包完整路徑:升級一個軟件

    6. 維護

    (1)RPM數據庫維護
    若是本機的RPM數據庫損壞,可能會致使沒法正確的讀取依賴關係,導致沒法正常執行rpm相關功能,此時可使用--initdb選項。

    rpm --initdb

    (2)簽名驗證
    當下載了一個軟件後,若是咱們沒法確保它的來源,以及是否被篡改,則須要使用相應的GPG文件。通常在光盤鏡像、網絡鏡像中均可以找到該文件,使用--import命令導入,在安裝軟件時會自動生效。

    rpm --import /mnt/cdrom/RPM-GPG-KEY-CentOS-6
相關文章
相關標籤/搜索