RPM 是 Red Hat Package Manager 的簡稱,主要是Red Hat上的軟體包裝方式。RPM 具有五種操作模式:安裝、移除、升級、查詢、驗證。
一、
安裝
-i表示install,-v使安裝時有套件名稱出現,若想看到更多訊息,可用-vv,-h使安裝時有”#”出現,等到”#”跑完,就是安裝完畢,安裝之前,--test可測試安裝。
二、
安裝時會出現的錯誤訊息
若出現foo package XXX.rpm is already insalled error: XXX.rpm cannot be installed表示已經安裝過,可加上--replacepkgs強制安裝。
若出現foo /x/x/xxx conflicts with file from XXX error: XXX.rpm cannot be installed
表示某些軟體或新舊軟體之間不相容或相衝,可加上--force強制安裝,但安裝之後不一定能正常執行。
若出現failed dependencies:XXX1 is neded by XXX2 表示要先安裝XXX1才能安裝XXX2,可加上--nodeps強制安裝,但安裝之後不一定能正常執行。
三、
移除
- 要移除已安裝的套件,只要加上-e的參數,例如:rpm –e XXX。
若出現removing these packages would break dependencies: XXX1 is needed by XXX2 表示XXX1的某一些檔案是XXX2執行時所需要的,所以不能移除,可加上--nodeps強制移除,但可能會造成其他軟體無法正常執行。
四、
升級
- 要升級已安裝的套件,只要加上-U的參數,例如:rpm –Uvh XXX。
-U是先移除舊版軟體再安裝新版軟體,因此不管有沒有安裝過,都可以用-Uvh來安裝,若想換回舊版軟體,可以加上--oldpackage強制安裝,升級之後,所有舊版軟體的設定檔會被複製成XXX.prmsave的檔名。
五、
查詢
- 執行: rpm –q XXX會顯示軟體套件的名稱和版本。
其他參數:
參數 | 說明 | 用法 |
| -a | 查詢目前所有已安裝套件 | rpm –qa |
| -c | 列出package中的軟體設定檔 | rpm –qc XXX |
| -d | 列出package中的文件檔 | rpm –qd XXX |
| -f | 查詢filename屬於哪一套件 | rpm –qf 檔名 |
| -l | 列出package的檔案擁有人 | rpm –ql XXX |
| -p | 查詢套件的套件名稱 | rpm –qp XXX |
| -R | 列出此軟體的dependency | rpm –qR XXX |
| -s | 列出package中的檔案狀態 (normal或missing) | rpm –qs XXX |
六、
驗證
- 若不小心移除了某些檔,或想知道的軟體是否正確,可執行:rpm –V XXX,或是rpm –Va驗證所有已安裝套件。
備註:以上為.i386.rpm的安裝方法,而.src.rpm的檔案安裝時,只要加上--recompile即可安裝,若是加上--rebuild參數,除了安裝之外,還會把.src.rpm的檔案重新包裝成.i386.rpm並放在/usr/src/redhat/RPMS的目錄下。