RPM安裝工具的使用
RPM包管理工具介紹
RedHat 軟件包管理工具(RedHat Package Manager,RPM)
RPM 軟件包工具常用於軟件包的安裝、查詢、更新升級、校驗、卸載以及生成.rpm 格式 的軟件包等操作。
RPM 軟件包工具只能管理后綴是.rpm 的軟件包。軟件包的命名格式:
軟件名稱-版本號(包括主版本號和次版本號).軟件運行的硬件平台.rpm
例:telnet-server-0.17-59.el7.x86_64.rpm。
RPM工具的使用
查詢
軟件包的查詢功能主要由-q選項完成,為了實現特殊的查詢功能要配合其它的選項使用。
【舉例 1】查詢系統中已經安裝的所有 RPM 軟件包。
#rpm -qa
【舉例 2】在已經安裝的軟件包中查詢包含 lib 關鍵字的軟件包的名稱。
#rpm -qa | grep lib
【舉例 3】查詢 openssh-server 軟件包是否已經安裝。
#rpm -q openssh-server
【舉例 4】查詢 openssh-server 和 telnet-server 兩個軟件是否已經安裝。
#rpm -q openssh-server telnet-server
【舉例 5】查詢已安裝的 openssh-server 軟件包的信息。
# rpm -qi openssh-server
【舉例 6】查詢 openssh-server 軟件包中有哪些文件,以及這些文件安裝在系統的位置。
#rpm -ql openssh-server
【舉例 7】查詢/var/empty/sshd 目錄是安裝哪一個軟件包而創建的
#rpm -qf /var/empty/sshd
安裝
安裝:rpm -ivh 軟件包名稱
【舉例 1】安裝 telnet-server-0.17-59.el7.x86_64.rpm 軟件包
#rpm -ivh telnet-server-0.17-59.el7.x86_64.rpm
升級
升級是先將低版本的軟件包卸載,再安裝高版本的軟件包。
【舉例 1】升級 telnet 軟件為 telnet-server-0.17-59.el7.x86_64.rpm 軟件包。
#rpm -Uvh telnet-server-0.17-59.el7.x86_64.rpm
刷新
刷新,如果選項指定軟件包的版本更高,會升級安裝。如果未安裝該軟件包,刷新選 項不會安裝軟件包。
【舉例 1】刷新 telnet-server-0.17-59.el7.x86_64.rpm 軟件包
#rpm -Fvh telnet-server-0.17-59.el7.x86_64.rpm
卸載
【舉例 1】將 telnet-server 軟件從系統中卸載。
#rpm -e telnet-server
常見問題分析
·在執行#rpm -qa 命令時,如果輸出信息過多,不易查找指定信息。
解決辦法:
使用 rpm -qa | grep
·在查詢軟件包信息或文件時,想保存執行結果。
解決辦法:
使用輸出重定向
·“軟件名稱”和“軟件包名稱”。
解決辦法:
安裝軟件時使用軟件包名稱,查詢與卸載時使用軟件名稱
·軟件包依賴問題
解決辦法:
可以使用 --nodeps 選項忽略,但安裝時建議不用
·RPM 數據庫損壞
解決辦法:
rpm 數據庫存放在/var/lib/rpm 目錄下,使用 rpm -rebuilddb 修復
·軟件安裝的時間問題
解決辦法:
安裝軟件時如果系統提示“warning:clock skew detected”
使用 date -s “2019-5-9” 14:00 修改系統時間
使用 hwclick -w 將更新時間寫入 CMOS