RHEL 6.4和OpenSSL 1.0.1-缺少依赖项..不是吗?


8

我正在尝试安装phpMyAdmin,但是我收到有关缺少openssl库的错误。但是,我已经使用ius仓库安装了它们。

Error: Package: php-cli-5.4.26-1.el6.remi.x86_64 (remi)
           Requires: libcrypto.so.10(OPENSSL_1.0.1_EC)(64bit)
Error: Package: php-5.4.26-1.el6.remi.x86_64 (remi)
           Requires: libcrypto.so.10(OPENSSL_1.0.1_EC)(64bit)
Error: Package: php-recode-5.4.26-1.el6.remi.x86_64 (remi)
           Requires: librecode.so.0()(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

openssl的版本检查;

[root@fts003lhr yum.repos.d]# openssl version -a
OpenSSL 1.0.1e 11 Feb 2013
built on: Wed Oct 16 16:35:53 EDT 2013
platform: linux-x86_64
options:  bn(64,64) md2(int) rc4(8x,int) des(idx,cisc,16,int) idea(int) blowfish(idx)
compiler: gcc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DKRB5_MIT -m64 -DL_ENDIAN -DTERMIO -Wall -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -Wa,--noexecstack -DPURIFY -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM
OPENSSLDIR: "/etc/pki/tls"
engines:  rsax dynamic

我正在使用RHEL 6.4 Santiago。

编辑:运行后 whatprovides

[root@fts003lhr yum.repos.d]# yum whatprovides */libcrypto.so.10
Loaded plugins: product-id, replace, rhnplugin, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
This system is receiving updates from RHN Classic or RHN Satellite.
openssl-1.0.0-20.el6_2.5.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-4.el6.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-20.el6_2.1.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-20.el6_2.2.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-20.el6_2.2.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-27.el6_4.2.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-20.el6_2.4.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-10.el6_1.5.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-10.el6_1.5.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-10.el6_1.4.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-25.el6_3.1.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-4.el6.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-25.el6_3.1.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-4.el6_0.1.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-10.el6.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-4.el6_0.2.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-4.el6_0.2.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-20.el6_2.4.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-10.el6.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-20.el6.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-20.el6.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-4.el6_0.1.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-20.el6_2.5.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-27.el6_4.2.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-20.el6_2.1.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-10.el6_1.4.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-27.el6.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-20.el6_2.3.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl-1.0.0-20.el6_2.3.i686 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib/libcrypto.so.10



openssl-1.0.0-27.el6.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : rhel-x86_64-server-6-6.4.1
Matched from:
Filename    : /usr/lib64/libcrypto.so.10



openssl10-libs-1.0.1e-2.ius.el6.x86_64 : A general purpose cryptography library with TLS implementation
Repo        : installed
Matched from:
Filename    : /usr/lib64/libcrypto.so.10

Answers:


6

仅仅因为您已经安装了实际的库,并不意味着已经满足依赖关系。这是存在众多不同存储库的问题之一-有时,即使不是不可能纠正,存储库之间的依赖关系也很困难。首先,在您的情况下,我将执行yum whatprovides */libcrypto.so.10,然后查看该软件包是否已安装。根据RPM数据库,可能不是。您是否通过安装了该软件包./configure; make; make install?如果是这样,yum installyum whatprovides返回的内容进行简单的处理将为您解决此问题。


我安装使用的包yum install openssl10ius回购。我刚刚运行了whatprovides您建议的命令。不幸的是,它不能解决问题。我已经用输出更新了我的问题。
杰克·埃文斯

1
我很确定IUS软件包provide在这种情况下不会提供正确的信息。它提供了正确的库,但是就RPM而言就不一样了。我专门给出的命令询问有关库文件的信息,而不是实际提供的信息。我可以建议EBST是试图找到openssl从雷米回购包,并用它代替IUS包,或者使用基本RHEL回购您的所有opensslphp-*包。
约翰

4

通常,这样的结果是由于存储库的组织问题(可能是在构建索引时上传/删除了程序包?),错误或缺少依赖项或局部头昏眼花。前者通常会在几个小时(或一天)内清理干净;可以通过清除存储库元数据(yum clean metadata)的混乱本地副本并重试来纠正后者。

有时,早期安装(尝试)或卸载失败导致的故障仍然存在并会干扰。运行package-cleanup --cleandupes,然后查看程序的手册页,了解其他选项。

请勿使用第三方存储库(EPEL或SC除外)。如果这样做,请考虑处理可能出现的差异,超出发行版规定的,超出发行版规定的官方程序包以及各种其他问题的成本。

永远不要从源头直接安装软件,而受到免责处罚。您的包裹管理系统对此一无所知,您肯定会陷入可怕的混乱之中。不,问题不是“是否”,而是“何时”。了解如何在迫切需要的情况下构建自己的软件包,但请考虑到以上提到的额外费用,您现在负责配置以与发行版集成,故障排除,跟踪上游版本,修补程序,有时从最新的git(或其他VCS)向后移植补丁。


0
  1. 从此链接下载rpm

  2. rpm -Uvh openssl-1.0.1e-16.el6_5.14.x86_64.rpm

  3. rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm

  4. yum install php54w


0

尝试同时使用针对RHEL7或CentOS 7的以下命令安装openssl和openssl-libs(根据您的OS变体来调整软件包):

sudo yum install http://mirror.centos.org/centos/7/os/x86_64/Packages/openssl-1.0.2k-8.el7.x86_64.rpm http://mirror.centos.org/centos/7/os/x86_64/Packages/openssl-libs-1.0.2k-8.el7.x86_64.rpm

由于openssl和openssl-libs相互依赖,并且在没有sudo的情况下运行可能会与旧版本产生冲突问题。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.