Rpm

rpm –upgrade 不升級?

  • September 30, 2018

有人可以幫我理解 rpm 命令。從 rpm 手冊頁:

rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...

This upgrades or installs the package currently installed to a newer version.
This is the same as install, except all other version(s) of the package are
removed after the new package is installed.

我的理解是,如果我指出PACKAGE_FILE這是對我已經安裝的東西的升級,它將替換文件……升級包。

具體來說,我正在嘗試在Fedora 14作業系統上升級*VirtualBox 。*我正在執行以下命令:

rpm -Uvh VirtualBox-4.1-4.1.4_74291_fedora14-1.x86_64.rpm

並且收到(很多)錯誤,說文件的版本較舊

... <similar output omitted>

file /bla/virtualbox/bla/powernotification-r0drv.c from install of
  VirtualBox-4.1-4.1.4_74291_fedora14-1.x86_64 conflicts with file from 
  package VirtualBox-4.0-4.0.12_72916_fedora14-1.x86_64

... </similar output omitted>

我顯然不明白這裡的東西。任何人都可以對此有所了解嗎?

-U只能升級同名包,兩個包名不同。一個叫VirtualBox-4.0,另一個叫VirtualBox-4.1

VirtualBox-4.0-4.0.12_72916_fedora14-1       .x86_64
^name          ^version              ^release ^arch

RPM 只是一個包,即您的命令安裝VirtualBox 包。如果新版本依賴於其他東西的更新版本,則該命令將失敗(顯然)。

您可以嘗試“yum localinstall VirtualBox-…”(yum 確實首先解決依賴關係,然後獲取所需的任何內容)。如果新版本需要更新,並且某些現有內容確實依賴於更新(並且沒有可用的新版本),這也可能會失敗。

引用自:https://unix.stackexchange.com/questions/23642