依赖问题在RHEL上安装php-mbstring(6)

时间:2015-03-03 23:18:12

标签: php install yum rhel6

我正在尝试在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,但没有运气。

2 个答案:

答案 0 :(得分:1)

php-mbstring包不是Base channel repo的一部分。您需要添加Optional通道才能访问它的任何更新。

首先,您需要知道如何接收更新:通过Classic / Satellite或Subscription Manager。这将改变频道的添加方式。

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

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

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

无论出于何种原因,该命令本身并没有解决我的依赖问题。我还必须告诉百胜启用该频道。我用这个命令这样做了: yum-config-manager --enable rhel-6-server-optional-rpms (链接:https://access.redhat.com/solutions/221963

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

答案 1 :(得分: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 

我希望它有所帮助!