linux-RPM包使用小結

一) 什麼是RPM?

    Redhat Package Manager的簡稱,就是包管理工具,它是linux中使用安裝最簡便的一種包管理工具。

rpm 執行安裝包有兩種:
二進制包(Binary):二進制包可以直接安裝在計算機中

源代碼包(Source):源代碼包將會由RPM自動編譯、安裝。源代碼包經常以src.rpm作爲後綴

rpm包管理一般由以下幾個內容組成:即,安裝   查詢    卸載   升級   校驗  庫重建等組成。

rpm包的名稱一般由包名、版本、子版本以及所支持的架構名這基本分組成

我們先來看下man rpm

wKioL1PU0v-CdCfVAAH_4WpttxQ688.jpg


二)  RPM命令的使用總結:   

  1)  安裝程序包:rpm  [選項]  文件路徑

         常用選項              -i :  安裝文件

                                    -v:: 查看附加信息

                                   -vv: 顯示調試信息

                                    -h::安裝時輸出hash記號

                                --test:僅用作測試,並不實際安裝。

            通常的情況下,-ivh 一起使用,這樣能夠比較清楚的顯示安裝的文件信息。

    有的情況需要重新安裝,怎麼安裝呢?

                rpm   --replacepkgs    文件路徑

                重新安裝時,如果原有的配置文件被修改了,則很有可能不執行替換, 而是將應該安裝生成的配置文件重命名爲 .rpmnew

    2)查詢操作:我以gcc包爲例

                查詢所有已經安裝的包:                       rpm  -qa

wKiom1PUz4yAZmIxAACdfrYmAEA591.jpg這裏我查詢的是gcc包的安裝情況

gcc 是包名,4.4.7是版本號,4.e16是小版本號,x86_64是架構


        查詢某個包是否被安裝:         rpm -q  包名

wKiom1PU0BrCGLw6AAA71b_u9_c556.jpg顯示已經安裝


        查詢某個包的描述信息:         rpm -qi 包名

wKiom1PU0HHSptkCAAMvvPkTj3I159.jpg

        查詢某個包生成了那些配置文件: rpm -qc 包名

        wKiom1PU0SHwjU8-AACKvuiTGCE944.jpg這裏我查詢的是yum包的配置文件

        查詢某個包生成了那些幫助文件: rpm -qd 包名

wKioL1PU0ezxWdooAAGPvYWyunc571.jpg我只列出部分而已

        查詢與莫個包相關的腳本:       rpm -q --scripts 包名

        查詢某個文件是由哪個包生成的: rpm -qf 文件路徑

wKiom1PU2o3D3VKOAABUfFIV_I8628.jpg

  3)卸載程序包

        rpm -e [選項] 包名   

           選項有:

                 --test 只執行刪除的測試  
                                  --noscripts 不運行預安裝和後安裝腳本程序  
                                  --nodeps 不檢查依賴性 

                                    沒有加選項 --nodeps  意味着,連同與該包有依賴關係的包一同卸載

     4)升級程序包

                    

           rpm [選項] 包的路經

                    升級或安裝    -Uvh

                    純升級        -Fvh    

                -F 是強制升級的意思 -v -h 和前面的安裝選項一樣

  5)校驗操作,校驗的目的就是查詢包安裝生成的文件屬性是否發生改變。

            rpm -V 包名

wKiom1PU0lSinQGMAAA4S7qtTOA834.jpg

    選項有:   

        S: 指示文件大小變更

        M: 指示文件權限、文件類型變更

        5: 指示MD5值變更

        D: 指示主/備設備號變更

        L: 指示連接變更

        U: 指示屬主變更

        G: 指示屬組變更

        T: 指示修改時間變更

    其中沒有修改的部分用 . 表示

  6)包來源合法性與完整性的校驗,對於系統安全性至關重要 

                   首先你要導入包製作者的公鑰

                        rpm --import 公鑰路徑

                    校驗包中的文件:

                        rpm -K 包文件路徑

                    其中如果不檢查包的完整性

                        rpm -K --nodigest

                    不檢查包的來源合法性

                        rpm -K --nosignature

                        --nopgp 不校驗PGP簽名

    7)庫重建:首先庫重建的默認目錄爲 /var/lib/rpm

            庫重建有兩種情況:

                    1 如果原先沒有庫,則建立一個庫,如果有,則不建立新的庫,用命令:

                                                 rpm --initdb      

                    2不管原先有沒有庫,都建立一個,有則覆蓋,沒有則新建,使用命令:

                                                rpm --rebuilddb


                    


                     

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章