rpm包管理

 操作系統是夜空的話,那麼第三方軟件就是夜空中璀璨的星辰。一個純淨的操作系統只包含了操作系統的核心程序,而我們日常所使用常用軟件都屬於第三方軟件。但不可否認的是,我們不會只安裝一個操作系統,其餘的什麼軟件都不用,那電腦對我們來說就只是一堆硬件和硬件上一堆的二進制代碼。是第三方軟件將操作系統變得漂亮、快捷、實用起來。

那我們怎麼在操作系統上管理第三方軟件,這就要用到軟件包的管理。在Redhat linuxSUSE上,第三方軟件包稱爲rpm;在Debian中我們稱之爲dpt。我們就來講講Redhat中的rpm包的管理。

常用的rpm管理命令有:

1、安裝

rpm -i:後面跟軟件包,表示安裝此軟件包;後面也可以跟軟件包的路徑

-h:以#顯示安裝進度,每個#表示2%

-v:在安裝時顯示詳細過程

-vv(最多三個):顯示更詳細的過程

rpm -ivh --nodeps:在安裝時忽略依賴關係

--replacepkgs:重新安裝,替換原有安裝

--force:強行安裝,可以實現重裝或升級

--test:測試此軟件包有沒有依賴關係之類的,只測試不安裝

 

2、卸載

在卸載軟件包時要確保卸載的軟件包沒有被其他軟件包依賴,不然卸載以後另外一個軟件也不可以用了。

rpm -e:後面指定包名即可卸載,不需跟軟件包的完整版本號等信息;

--nodeps:強行卸載

 

3、查詢

rpm -qa:不需加任何參數,查詢已經安裝的所有軟件包

-q PACKAGE_NAME(包名):指查詢指定的包是否已經安裝

-qi PACKAGE_NAME:查詢指定軟件包的說明信息

-ql PACKAGE_NAME:查詢指定包安裝後生成的文件列表

-qc PACEAGE_NAME:查詢指定安裝包的配置文件

-qd PACKAGE_NAME:查詢指定安裝包的幫助文件

-q --scripts PACKAGE_NAME:查詢指定包中包含的腳本

-qf /path/to/somefile(文件路徑):查詢某個文件是由哪個rpm包安裝生成的

在安裝之前我們也可能需要知道軟件包安裝後有哪些文件及文件所在的目錄

rpm -qpi PACKAGE_FILE:查詢指定包的說明信息

rpm -qpl PACKAGE_FILE:查詢指定包安裝後會生成的文件

 

4、升級

rpm -Uvh PACKAGE_FILE:如果裝有老版本的,則升級;否則,則安裝

rpm -Fvh PACKAGE_FILE:如果裝有老版本的,則升級;否則退出

 

5、校驗

用來查詢我們的數據是否被修改過

rpm -V PACKAGE_NAME:查看軟件包的完整性

-Va:列出當前系統上所有可能被更改的文件

6、重建數據庫

rpm --rebuilddb:重新建立數據庫文件,此命令表示一定會重建;

--initdb:初始化數據庫,沒有才建立,有就不用建立

 

7、檢驗來源合法性及軟件包完整性

rpm -K  /path/to/package-file

dsa, gpg:驗證來源合法性,也即驗證簽名;可以使用--nosignature,略過此項

sha1, md5:驗證軟件包完整性;也可以使用--nodigest,略過此項

--import:導入簽名

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