Linux CentOS YUM 错误包需要 - libcrypto.so.10(OPENSSL_1.0.1_EC)(64位)

标签 linux openssl centos yum

当我尝试执行“yum update”时出现错误,但我不确定如何解决。以下是错误消息:

--> Finished Dependency Resolution
Error: Package: nginx-1.4.7-1.el6.ngx.x86_64 (nginx)
           Requires: libcrypto.so.10(OPENSSL_1.0.1_EC)(64bit)

当我尝试升级(我相信这是最好的一步)时,我“无事可做” - 就像使用以下行:

喜欢:

sudo yum reinstall openssl

或者:

sudo yum install http://mirror.centos.org/centos/6/os/x86_64/Packages/openssl-1.0.1e-15.el6.x86_64.rpm

Examining /var/tmp/yum-root-qbBKfF/openssl-1.0.1e-15.el6.x86_64.rpm: openssl-1.0.1e-15.el6.x86_64
/var/tmp/yum-root-qbBKfF/openssl-1.0.1e-15.el6.x86_64.rpm: does not update installed package.
Error: Nothing to do

我尝试清理 YUM 数据库

rpm -e --justdb --nodeps openssl

sudo rpm -ivh --force http://mirror.centos.org/centos/6.5/updates/x86_64/Packages/openssl-1.0.1e-16.el6_5.4.x86_64.rpm

当我运行“rpm -q --provides openssl”时,这些似乎都安装了所需的软件包,但是我随后在 YUM 中收到此错误消息:

sudo yum update
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

   /lib64/libcrypto.so.10: version `OPENSSL_1.0.1_EC' not found (required by /usr/lib64/libssl.so.10)

Please install a package which provides this module, or
verify that the module is installed correctly.

It's possible that the above module doesn't match the
current version of Python, which is:
2.6.9 (unknown, Feb 24 2014, 11:42:49)
[GCC 4.6.3 20120306 (Red Hat 4.6.3-2)]

If you cannot solve this problem yourself, please go to
the yum faq at:
  http://yum.baseurl.org/wiki/Faq

有人可以建议我应该尝试的其他事情吗?

我似乎无法更新、强制更新、清理 Yum DB 并重新安装。 clean DB 和 Force 确实获取了软件包,但 YUM 找不到它需要的 OPENSSL_1.0.1_EC 软件包。

我尝试使用这两个软件包进行升级:

http://mirror.centos.org/centos/6.5/updates/x86_64/Packages/openssl-1.0.1e-16.el6_5.4.x86_64.rpm
http://mirror.centos.org/centos/6/os/x86_64/Packages/openssl-1.0.1e-15.el6.x86_64.rpm

最佳答案

您似乎安装了非库存 openssl 软件包(可能是 ptudor 的?),因为他完全删除了 openssl-1.0.1e/version.map.fips-ec,所以它们不提供 OPENSSL_1.0.1_EC。

一个可能的修复方法是以这种方式将提供添加到您的自定义 openssl 包中:

--- openssl-1.0.1e-version.patch        2014-06-06 11:52:55.772046103 +0200
+++ new_openssl-1.0.1e-version.patch    2014-06-06 11:52:40.854045438 +0200
@@ -61,4 +61,12 @@
 +          _original*;
 +          _current*;
 +};
++OPENSSL_1.0.1_EC {
++    global:
++           EC*;
++};

应将所需的 PROVIDE 添加到库中。我向他提供了这个解决方案,但他不喜欢。

https://github.com/ptudor/centos6-openssl/issues/4

否则您必须重建 nginx 软件包才能链接到您的自定义 openssl。

关于Linux CentOS YUM 错误包需要 - libcrypto.so.10(OPENSSL_1.0.1_EC)(64位),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22648597/

相关文章:

c - OpenSSL 无法在后端加载证书

SSL 证书已更新但更改不可见

flash - 延长/续订 p12 自签名证书已过期

apache - 已安装 ssl 但不安全

Linux 将控制台输出附加到日志文件?

linux - 当前在 Linux 中运行的应用程序

linux - 将 .txt 文件中的输入用于 if 命令 shell linux

git - 无法使用 git 克隆任何存储库

docker - 用./configure配置了一个下载的包,如何从centos中彻底删除

linux - Bash 脚本自动化