rpm包管理

rpm程序包管理器的功能,把編譯好的的程序打包好,能夠是一個或幾個。這包能夠用來安裝,升級,降級,卸載,查詢,校驗,包數據庫管理等功能 。儘管rpm比起源代碼安裝要簡單很多,但仍是有依賴關係這種頭疼的問題。爲了解決這種問題就有了yum(ubuntu的apt-get)。rpm把源代碼作成rpm包時通常會用分包機制,把每一個功能打成一個包,通常爲一個主包和幾個子包組成,子包依賴主包。爲程序提供一個統一安裝管理的功能。包組成內容:node

       1,數據庫數據庫

                程序名稱和版本,升級與降級用的到,ubuntu

                依賴關係,此軟件包依賴其它那些軟件包。ide

                功能性說明摘要測試

                安裝生成的各個文件路徑及文件的校驗碼。ui

        2,程序組成清單.net

                文件清單ip

                安裝卸載時運行的腳本,如此程序使用某個用戶身份運行,安裝時須要建立用戶,卸載時刪除用戶。用本有四種get

                        安裝前腳本,安裝後腳本,卸載前腳本,卸載後腳本。it


rpm命令格式:程序名-版本號.tar.{gz,bz2,xz},版本號分依次爲:主版本號-次版本號-發行號。子包通常用功能性描述出來。


rpm包獲取途徑有,系統安裝光盤,發行版的主頁,鏡像站如http://mirrors.163.com  http://mirrors.sohu.com。 軟件項目的官網,第三個機構或我的,如fedora的epel。如http://rpmfind.net和http://rpm.pbone.net


rpm rpm程序安裝命令 -i 安裝,install。後面跟上rpm包名 -e 卸載,後面跟上程序名。卸載時也會有依賴關係。 若是有依賴關係有兩種方法,1,將依賴此程序包的其它程序一併卸載。2忽略依賴關係。有可能依賴此程序包的程序運行不正常。 若是安裝後被改動過,卸載時不會卸載,而是被重命名保留。 -v 顯示詳細信息 -vv 顯示更詳細的信息 -vvv 顯示更更詳細的信息 -h 使用#顯示安裝進度,第個#爲百分之二的進度 --test 測試下rpm包是否能安裝。只作測試不會真正安裝。 --nodeps 忽略依賴關係 若是出現依賴關係,要麼把依賴的包裝上,要麼忽略依賴關係,但這樣比較不可靠,有可能致使所安裝的軟件沒法運行 -replacepks 從新覆蓋安裝以前安裝程序。從新安裝時,若是原有的配置文件作了修改時,頗有可能不作替換,而是將該這個程序生新的配置文件重命名爲.rpmnew結尾的文件。須要從新命名。 -U 升級或安裝,升級是把老版刪除而安裝新版。若是沒有安裝老程序,則安裝。 -f 純升級,若是以前沒有安裝這個程序,則不會安裝 --force 強制升級。可能會致使其它依賴此程序包的軟件不正常運行。內核應該安裝,不該該升級。 -q 查詢某包是否安裝,q後面跟上軟件包名,能夠一次查詢多個,以空格隔開。 -qa 查詢全部已經安裝的包 -qi 查詢已安裝包的功能描述信息 -ql 查詢某個安裝包,安裝後生成了那些文件。ql後面要加上程序包名。 -qc 查詢某個包安裝後生成了那些配置文件 -qd 查詢某個包安裝後生成了那些幫助文件 -q --scripts 查詢某個包相關的腳本。後面要跟包名。 -qf 查詢某個文件是由那個包生成的。後面跟上要查詢的文件路徑。 -p 查詢某個沒有安裝的包安裝後的相關係統,後面要跟上包的名稱。 經常使用幾個組合 -qpi -qpl -qpc -qpd -V 校驗,檢測包安裝後文件屬性是否發生變化,好比某個包安裝後配置文件沒有修改過。後面跟上包名 來源合法性,我完整性檢驗。前題須要在當前系統上導入發行製做都的公鑰。 --import 導入公鑰,後面跟上公鑰名稱。能夠導入多入公鑰。 rpm -qa gpg-pubkey* 顯示已經導入的公鑰。 rpm -qi 顯示某個密鑰的詳細信息,後面跟上密鑰名。 -K 查檢包的完整性,安裝時會自動檢查。後面跟上包的名稱。作檢查前須要導入密鑰。 -K --nodigest 不檢查包完整性 -K --nosignature 不檢查包來源合法性 rpm數據庫目錄在/var/lib/rpm,若是損壞能夠重建,方法有兩種 rpm --initdb 初始化,若是事先沒有庫會新建一個,若是有則不執行此命令。 rpm --rebuilddb 重建,直接覆蓋原有的數據庫。

相關文章
相關標籤/搜索