600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > [openssl]centos version ‘libcrypto.so.10‘ not found

[openssl]centos version ‘libcrypto.so.10‘ not found

时间:2020-12-07 03:18:21

相关推荐

[openssl]centos version ‘libcrypto.so.10‘ not found

因为业务模块代码调用 certificate_parse 接口函数报错,定位后说程序链接的openssl版本 1.0.2k过低导致。实际上服务器已安装过3.0.1版本,openssl version 查看结果也是3.0.1 ,但是/usr/lib64 下libssl 和libcrypto 的版本还是1.0.2k。冲动之下删了 1.0.2k相关的so文件,导致yum、scp、meson等命令都用不了,sshd服务启动不了,而且报错都是以下信息:

ImportError: /lib64/libcrypto.so.10: version `libcrypto.so.10' not found (required by /usr/lib64/python3.6/lib-dynload/_hashlib.cpython-36m-x86_64-linux-gnu.so)

折腾半天,才把服务器恢复。记录一下过程:

1、因为安装过3.0.1 版本,直接在 /usr/lib64/ 下添加 libssl.so.10 和 libcrypto.so.10 的软链接,无用;

2、删了3.0.1版本,换装1.1.1 版本,加好软链接,还是无用,重启了服务器,sshd服务起不来,只能到机房去操作;

3、重新加软链接还是不行,想还原到1.0.2k版本,yum命令用不了,拷贝安装包到u盘,然后挂载上服务器,拷贝到服务器上手动安装。安装前先删了1.1.1 版本。安装完成后重新做 libssl.so.10 和 libcrypto.so.10 的软链接。sshd服务器能启动了,上面的命令都能用了。

4、1.0.2k 下载链接(/source/old/index.html)安装步骤:

./config --prefix=/usrmake ; make install//以上编译安装后只有.a文件,我们需要so文件//再来一遍./config -d shared --prefix=/usrmake cleanmake ; make install

总结:1、系统是centos7.8,yum默认安装1.0.2k版本,要安装更高版本,需下载安装包手动安装。安装完后虽然 openssl version 版本是自己安装的版本,但是 /usr/lib64 下 libssl.so.10 和 libcrypto.so.10 链接的还是 1.0.2k版本。

2、/usr/lib64/下,libcrypto.so.10 文件被很多命令依赖,不能随便删除和更换。

3、还原到1.0.2k版本后,业务模块调用certificate_parse不再出错,说明一开始问题的原因还是3.0.1 版本有问题。

4、

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。