rpm管理包

rpm命令是RPM軟件包的管理工具。rpm原本是Red Hat Linux發行版專門用來管理Linux各項套件的程序,由于它遵循GPL規則且功能強大方便,因而廣受歡迎。逐漸受到其他發行版的采用。RPM套件管理方式的出現,讓Linux易于安裝,升級,間接提升了Linux的適用度。接下來聊一聊如何安裝、卸載、查詢、檢驗rpm類的軟件。

安裝:

rpm [-i|–install][install-options] 軟件包名

 -v 顯示詳細信息

 -h 以#來表示安裝進度

 –test 測試安裝,不執行真正的安裝過程

 –nodeps 忽略依賴關系(能安裝成功,但不一定能運行成功)

 –force 強制安裝

 –replacepkgs 重裝并覆蓋原有文件

 安裝時常用組合:-ivh

升級:

rpm [-U|–upgrade][install-options] 軟件包名

 -U 升級或安裝

 -F 升級

 -Uvh 當有舊版本的安裝包時,則卸載舊包再裝新包,如沒有舊包,直接裝新包。

 -Fvh 當有舊版本的安裝包時,卸載舊包裝新包,無舊包時,什么都不做

 –test: 測試安裝,但不真正執行安裝,即dry run模式

 –nodeps:忽略依賴關系

 –oldpackage 降級 已有新包,裝舊包。

 –force 強制安裝。

【溫馨提示】

(1) 不要對內核做升級操作;Linux支持多內核版本并存,因此可以直接安裝多個版本內核

(2) 如果原程序包的配置文件安裝后曾被修改,升級時,新版本的提供的同一個配置文件并不會直接覆蓋老版本的配置文件,而把新版本的文件重命名(FILENAME.rpmnew)后保留

查詢:

rpm [-q|–query][select-options][query-options] 軟件包名

 -q  查詢某軟件包是否安裝

 -qa 查詢已經安裝的所有軟件包

 -qf 查詢某文件由哪個軟件包生成

 -qp 查詢未安裝的軟件包

 -qi 查詢某軟件包的詳細信息

 -ql 查詢軟件包安裝生成的文件列表

 -qc 查詢軟件包的配置文件(不是所有包都有配置文件)

 -qd 查詢軟件包的幫助文檔

 -qR 查詢實現自身的功能需要什么能力

 -q –changelog 版本更新日志

 -q –scripts 查詢軟件包自帶的腳本

 -q –provides 查詢自身提供的capabilities

 -q –requires 查詢自身所依賴的capabilities

卸載:

rpm -e 軟件包名

     –nodeps 忽略依賴性關系,強制卸載  

 –test 測試卸載,即dry-run模式

 –allmatches 如果一個程序包同時安裝多個版本,則此選項可以一次全部卸載。

【溫馨提示】

如果程序包的配置文件安裝后曾被修改,卸載時,此文件通常不會被刪除,而是被重命名(FILENAME.rpmsave)后留存

驗證:

rpm -V 軟件包名

    -V 查詢軟件包安裝之后生成的文件是否發生了改變

    -K 驗證軟件包的完整性和rpm簽名是否合法

–nosignature: 不檢查來源合法性

    –nodigest:不檢查包完整性

    –noscripts:不執行程序包腳本

      %pre: 安裝前腳本; –nopre

      %post: 安裝后腳本; –nopost

      %preun: 卸載前腳本; –nopreun

      %postun: 卸載后腳本; –nopostun

最后來兩道練習題吧:

1.統計光盤中Packages下,各種架構的rpm包的數量。

rpm管理包

由于安裝包很多,所以這里也沒有具體截圖,給大家展示一下最后顯示的結果,方法很多種,關鍵看你怎么用,能達到簡單、快速、高效的結果(還記得rev是什么功能么?沒錯rpm管理包就是逆序輸出內容。這里用rev取個巧)

2.查詢命令java來自于哪個rpm包

rpm管理包

rpm管理包

rpm管理包

rpm管理包

rpm管理包

這里呢執行一次,截了一次圖,別問為什么,就是這么任性rpm管理包。當然了主要還是為了能讓你們能夠清晰直觀的閱讀,想知道java這個命令來自哪個包,當然得知道什么是java啦(第一張圖示)然后 在接下來一步一步找,你會發現查了一步是鏈接,再查還是鏈接,有沒有覺得很好玩,一層套一層,層層鏈接終于找到它。(當初實驗的時候可是花費了很久才找到,找到了發現原來它就在這。這叫眾里尋他千百度,驀然回首,它就在java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64里rpm管理包)好了,以上就是今天的分享了,謝謝大家rpm管理包

原創文章,作者:吼吼哈嘿,如若轉載,請注明出處:http://www.www58058.com/84908

(0)
吼吼哈嘿吼吼哈嘿
上一篇 2017-08-19 07:17
下一篇 2017-08-19 09:36

相關推薦

  • 數據庫基礎知識

    關系模型:結構化數據模型實體-關系模型對象關系模型:基于對象的數據模型半結構化數據模型:XML(擴展標記語言) SQL:Structure Query Language結構化查詢語言DML:數據操作語言INSERT DELETE SELECT UPDATEDDL:數據定義語言CREATE DROP ALTERDCL: 數據控制語言GRANT REVOKE R…

    Linux干貨 2017-09-25
  • N22-浙江-情歌第一周博客作業

    一、計算機的組成及其功能    計算機有五大組成部分:CPU(控制器和運算器)、內存、輸入、輸出           CPU:運算、控制、寄存、緩存功能           內存:RAM       &nbsp…

    Linux干貨 2016-08-15
  • pam_mysql認證ftp虛擬用戶賬號

    pam_mysql認證ftp虛擬用戶賬號: 虛擬用戶:        用戶賬號存儲于何處?        文件、MySQL、Redis、…       &nb…

    2017-06-13
  • Linux的發展史和Linux的終端類型

    Linux的發展史和Linux的終端類型 前言:    隨著時代的發展,Linux所占的市場份額越來越大,目前幾乎百分之九十的服務器市場都被Linux占據。接下來我們來聊聊Linux的發展史。 簡單的說:Linux操作系統是1998年的8月芬蘭的一個叫Linus Torvalds的大學生寫出來的一個類minix的系統。 具體分析: Lin…

    Linux干貨 2016-10-17
  • Linux中的用戶、組和權限的管理

    一、Linux的安全模型     在Linux中用戶登陸時必須提供用戶名和密碼(用戶是由root用戶創建的,最初的密碼也是root用戶設定的)。系統使用用戶和群組來控制使用者訪問文件和其他資源的權限。每一個文件都一定屬于一個用戶(一般該用戶就是文件的創造者)并與一個群組相關。每一個進程(處理程序)都會與一個用戶和群組關…

    Linux干貨 2016-08-07
  • 正則表達式常用元字符

    正則表達式的使用需要借助于工具程序來實現,我們使用grep來演示正則表達式元字符的使用。     grep使用方法             grep是一種文本搜索工具,根據用戶指定的文本模式(搜索條件…

    Linux干貨 2015-03-10
欧美性久久久久