0

我正在尝试在 Red Hat Enterprise Linux Server 6.6 版(圣地亚哥)上安装 php-mbstring。这是我的 yum 命令/响应:

-bash-4.1$ yum install php-mbstring --enablerepo=optional
Loaded plugins: product-id, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php-mbstring.x86_64 0:5.3.3-27.el6_5 will be installed
--> Processing Dependency: php-common(x86-64) = 5.3.3-27.el6_5 for package: php-mbstring-5.3.3-27.el6_5.x86_64
--> Finished Dependency Resolution
Error: Package: php-mbstring-5.3.3-27.el6_5.x86_64 (optional)
           Requires: php-common(x86-64) = 5.3.3-27.el6_5
           Installed: php-common-5.3.3-40.el6_6.x86_64 (@updates)
               php-common(x86-64) = 5.3.3-40.el6_6
           Available: php-common-5.3.3-3.el6_2.8.x86_64 (updates)
               php-common(x86-64) = 5.3.3-3.el6_2.8
           Available: php-common-5.3.3-14.el6_3.x86_64 (updates)
               php-common(x86-64) = 5.3.3-14.el6_3
           Available: php-common-5.3.3-22.el6.x86_64 (updates)
               php-common(x86-64) = 5.3.3-22.el6
           Available: php-common-5.3.3-23.el6_4.x86_64 (updates)
               php-common(x86-64) = 5.3.3-23.el6_4
           Available: php-common-5.3.3-26.el6.x86_64 (base)
               php-common(x86-64) = 5.3.3-26.el6
           Available: php-common-5.3.3-27.el6_5.x86_64 (updates)
               php-common(x86-64) = 5.3.3-27.el6_5
           Available: php-common-5.3.3-27.el6_5.1.x86_64 (updates)
               php-common(x86-64) = 5.3.3-27.el6_5.1
           Available: php-common-5.3.3-27.el6_5.2.x86_64 (updates)
               php-common(x86-64) = 5.3.3-27.el6_5.2
           Available: php-common-5.3.3-38.el6.x86_64 (updates)
               php-common(x86-64) = 5.3.3-38.el6
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

但是,安装了 php-common:

-bash-4.1$ sudo yum list install php-common*
Loaded plugins: product-id, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Installed Packages
php-common.x86_64   5.3.3-40.el6_6  @updates

问题似乎是版本错误。但是版本比需要的新,所以它不应该工作吗?

我确实尝试了两者--skip-brokenrpm -Va --nofiles --nodigest但没有运气。

4

2 回答 2

2

php-mbstring 包不是基本频道 repo 的一部分。您需要添加可选频道才能访问它的任何更新。

首先,您需要知道如何接收更新:通过经典/卫星或订阅管理器。这将改变添加频道的方式。

如果使用 Classic,请尝试: rhn-channel --add --channel=rhel-x86_64-server-optional-6 系统将提示您输入 RHN 凭据。

过去,当我使用经典模式进行更新时,这对我有用。我已经更新为使用订阅管理器,并且频道以不同的方式添加。

要使用订阅管理器添加频道,请执行以下操作:subscription-manager repos --enable rhel-6-server-optional-source-rpms(链接:https ://access.redhat.com/solutions/392003 )

无论出于何种原因,仅该命令并不能解决我的依赖问题。我还必须告诉 yum 启用该频道。我使用以下命令执行此操作:yum-config-manager --enable rhel-6-server-optional-rpms(链接:https ://access.redhat.com/solutions/221963 )

完成这些步骤后,我的更新工作并解决了依赖关系。

于 2015-05-15T19:44:13.823 回答
0

如果有用,当您没有 RHN 凭据时,您可以执行以下操作:首先,在网上的某个地方找到该软件包(它必须与您的确切 php 版本相符),即:php-mbstring-5.3.3-40.el6_6.x86_64.rpm

wget http://mirror.centos.org/centos/6/updates/x86_64/Packages/php-mbstring-5.3.3-40.el6_6.x86_64.rpm
sudo yum localinstall php-mbstring-5.3.3-40.el6_6.x86_64.rpm 

我希望它有帮助!

于 2015-06-18T16:01:15.150 回答