Yum

如何強制 CentOS yum 使用已安裝的包依賴的更高版本(php-common 作為 php-xml 的依賴)

  • November 20, 2012

看起來我擁有的php-common-5.2.10-1.el5.centos版本比php-xml我嘗試php-xml使用yum install php-xml. 請求的依賴包php-common = 5.1.6-34.el5_8如 所示rpm -qa |grep php

那麼我將如何強制 php-xml 使用我已經擁有的更高版本?

(這似乎是相關 SF 問題中問題的根本原因:php-xml install 抱怨依賴 php-common 但這已經安裝(CentOS)

更新

輸出:

  • yum repolist
  • rpm -qi php-common

(根據@ewwhite 的要求)如下:

[root@dtsrvishvt2 ~]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.mirroring.pulsant.co.uk
* extras: centos.mirroring.pulsant.co.uk
* updates: centos.mirroring.pulsant.co.uk
Reducing CentOS-5 Testing to included packages only
Finished
repo id                          repo name                                status
base                             CentOS-5 - Base                          2,725
c5-testing                       CentOS-5 Testing                          0+71
extras                           CentOS-5 - Extras                          280
updates                          CentOS-5 - Updates                         379
repolist: 3,384
[root@dtsrvishvt2 ~]#





[root@dtsrvishvt2 ~]# rpm -qi php-common
Name        : php-common                   Relocations: (not relocatable)
Version     : 5.2.10                            Vendor: CentOS
Release     : 1.el5.centos                  Build Date: Fri 13 Nov 2009 04:36:29 PM GMT
Install Date: Tue 13 Jul 2010 11:33:44 AM GMT      Build Host: builder10.centos.org
Group       : Development/Languages         Source RPM: php-5.2.10-1.el5.centos.src.rpm
Size        : 668395                           License: PHP
Signature   : DSA/SHA1, Fri 22 Jan 2010 03:22:25 PM GMT, Key ID 5c37c0b17203f491
URL         : http://www.php.net/
Summary     : Common files for PHP
Description :
The php-common package contains files used by both the php
package and the php-cli package.
[root@dtsrvishvt2 ~]#

您能否提供以下命令的輸出?

  • yum repolist
  • rpm -qi php-common

CentOS 5 系統的目前版本的 php-common 是php-common-5.1.6-34.el5_8. 您的依賴問題源於存在比標準 CentOS 儲存庫中可用的更新版本的 php-common (5.2.10-1.el5.centos)。該yum repolist命令將幫助我們了解您從哪裡提取包裹。這rpm -qi php-common將向我們展示目前安裝的軟體包實際來自何處。

我的猜測是,系統是使用另一個 repo 遷移到 PHP 5.2,或者可能是通過手動安裝包。這已使用 CentOS 測試儲存庫線上記錄。如果您的 php-common 包是一次性安裝,那麼您應該能夠獲取相關的 php 包…但這取決於您的 repolist 輸出…

引用自:https://serverfault.com/questions/391839