眾所周知,yum 是一個建構在 rpm 之上的套件管理系統。它也是一個命令列實用程序,(粗魯地說)是 rpm 的更廣泛版本,它解決了 rpm 不關心的許多問題(主要顯然是依賴項)。是否有任何特定情況下使用 rpm 指令比 yum 更合適?
答案1
rpm
用於與電腦上的 RPM 資料庫進行互動。因此您可以查看資料庫的目前狀態、驗證軟體包、檢查已安裝軟體的依賴關係等。
yum
使用rpm
(實際上,它使用 rpm python 庫)進行大部分本地操作,但它只能執行該rpm
命令可以執行的有限數量的功能,僅與軟體的安裝、更新和刪除相關。 yum
還可以與本地和遠端軟體儲存庫通信,並產生依賴關係圖來管理軟體包,這是rpm
不能的。
答案2
rpm
做了很多事情,只有其中一些被yum
.例如,驗證已安裝的軟體包 ( --verify
)。比較 手冊頁yum
和rpm
手冊頁。
答案3
在較新版本的yum 中,rpmdb 並不是唯一被事務(安裝或刪除軟體包)更改的東西,因此在yum 後面直接使用rpm 來執行此操作是非常有害的......並且yum 會向您抱怨,如果你這樣做。
我唯一想到的是 rpm 可以做而 yum 不能做的事情是簽署軟體包(rpm -K)...但某些操作可能會稍微快一些,而且顯然有些事情人們記得更好/更容易。
答案4
在某些情況下,您首先使用 rpm,在 yum 之前執行一些初步操作。一個很好的例子是MySQL。
(1) rpm -iv mysql-community-release-el6-5.noarch.rpm
此時 mysql/yum 儲存庫已準備就緒,您可以開始僅依賴 yum 來取得主 mysql 和其餘選用套件:
(2) yum install mysql-community-server
查看具體資訊:
http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/index.html