一、簡介
RPM是RedhatPackageManager的縮寫,是由RedHat公司開發的軟體包安裝和管理程式,同Windows平臺上的Uninstaller比較類似。使用RPM,使用者可以自行安裝和管理Linux上的應用程式和系統工具。RPM可以讓使用者直接以binary方式安裝軟體包,並且可替使用者查詢是否已經安裝了有關的庫檔案;在用RPM刪除程式時,它又會聰明地詢問使用者是否要刪除有關的程式。如果使用RPM來升級軟體,RPM會保留原先的配置檔案,這樣使用者就不用重新配置新的軟體了。RPM保留一個資料庫,這個資料庫中包含了所有的軟體包的資料,通過這個資料庫,使用者可以進行軟體包的查詢。RPM雖然是為Linux而設計的,但是它已經移值到SunOS、Solaris、AIX、Irix等其它UNIX系統上了。RPM遵循GPL版權協議,使用者可以在符合GPL協議的條件下自由使用及傳播RPM。
二、配置
RPM包管理的配置檔案是rpmrc,可以使用如下命令進行查詢
# locate rpmrc
可以通過如下命令進行檢視
rpm --showrc
三、功能
1、初始化rpm 資料庫功能;
通過rpm 命令查詢一個rpm 包是否安裝了,也是要通過rpm 資料庫來完成的;所以我們要經常用下面的兩個命令來初始化rpm 資料庫;
[root@localhost beinan]# rpm --initdb
[root@localhost beinan]# rpm --rebuilddb 注:這個要花好長時間;
2、RPM軟體包管理功能
1)查詢功能:
rpm {-q|--query} [select-options] [query-options]
使用例項
1)查詢一個已經安裝的檔案屬於哪個軟體包
rpm -qf 檔名
2)查詢已安裝軟體包都安裝到何處
rpm -ql 軟體名
或
rpm rpmquery -ql 軟體名
3)檢視一下已安裝軟體的配置檔案
rpm -qc 軟體名
4)檢視一個已經安裝軟體的文件安裝位置
rpm -qd 軟體名
5)檢視一下已安裝軟體所依賴的軟體包及檔案
rpm -qR 軟體名
6)檢視一件軟體包所包含的檔案
rpm -qpl 檔名
2)軟體包的安裝、升級、刪除
1)常規包安裝
-ivh:安裝顯示安裝進度--install--verbose--hash -Uvh:升級軟體包--Update; -Va:校驗所有的RPM軟體包,查詢丟失的檔案[View Lost]; -e:刪除包
2)原始碼包安裝
rpm --recompile vim-4.6-4.src.rpm #這個命令會把原始碼解包並編譯、安裝它,如果使用者使用命令: rpm --rebuild vim-4.6-4.src.rpm #在安裝完成後,還會把編譯生成的可執行檔案重新包裝成i386.rpm的RPM軟體包。
詳細用法請參考:http://ftp.tsingpost.com/index.php/archives/379/
3)網路包安裝
# rpm -qpi http://mirrors.kernel.org/fedora/core/4/i386/os/ Fedora/RPMS/gaim-1.3.0-1.fc4.i386.rpm # rpm -ivh http://mirrors.kernel.org/fedora/core/4/i386/os/ Fedora/RPMS/gaim-1.3.0-1.fc4.i386.rpm
4)指定安裝目錄:要加 -relocate 引數
rpm -ivh --relocate /=/opt/gaim gaim-1.3.0-1.fc4.i386.rpm #gaim-1.3.0-1.fc4.i386.rpm指定安裝在目錄: /opt/gaim 中
3、匯入簽名功能
rpm --import 簽名檔案
4、rpm軟體包抽取檔案功能
rpm2cpio file.rpm |cpio -div
提示:抽取出來的檔案就在當前目錄中的usr 和etc下