安装MongoDB启动报错:找不到共享库文件libcrypto.so.10

问题描述以及排查报错:

备注:

本问题出现在x86_64架构的服务器上面

排查问题一

安装完mongodb启动时报一下错误:
error while loading shared libraries: libcrypto.so.10: cannot open shared object file: No such file or directory

报错的大概意思是找不到共享库文件 libcrypto.so.10。

①在这里我通过查询问题有的教程提到可以通过设置软连接的方式来为./mongod提供依赖。

首先通过命令ldd /path/bin/mongod 来查看./mongod还需要哪些依赖

然后设置软连接:

通过"find / -name xxxxxxxx"查找对应依赖文件位置

设置软连接

ln -s /usr/lib/libcrypto.so.10 /lib64/libcrypto.so.10
ln -s /usr/lib/libssl.so.10 /lib64/libssl.so.10

 这样/lib64文件夹里就有可执行的依赖libcrypto.so.10和libssl.so.10

②以上排查解决后启动mongodb服务再次报错报出以下错误:

./mongod: error while loading shared libraries: libcrypto.so.10: wrong ELF class: ELFCLASS32

 查询到意思是说我的系统是64位的但是我用的软件是32位的。不知道意思对不对,反正结果都是无法执行。

③继续在网上找教程,终于找到下面这个教程。虽然不是很一样但还是完美解决问题,开心。

排查问题二

2.通过yum whatprovides libcrypto.so.10命令查看哪个包下有共享库文件

[root@iZ2ze21r4a1m7b1cmo6t0sZ lib64]# yum whatprovides libcrypto.so.10
compat-openssl10-1:1.0.2o-3.el8.i686 : Compatibility version of the OpenSSL library
Repo : @System
Matched from:
Provide : libcrypto.so.10

排查问题三

执行安装命令 yum -y install compat-openssl10-1:1.0.2o-3.el8.i686

再次执行启动mongodb命令还是报错

错误:./bin/mongod: error while loading shared libraries: libcrypto.so.10: cannot open shared object file: No such file or directory


 

(剩下的步骤我也不知道为啥这么做,照抄教程做就成功了)

排查问题四

MongoDB4.2.0需要依赖openssl10相关资源,必须先在Linux中安装openssl10。

执行命令:yum install compat-openssl10 下载完后最后执行ldd mongod看到文件都已经存在

具体什么原因不是特别清楚

最有启动执行mongodb服务启动正常

如果离线情况下无法下载也可以直接上传共享库文件到/use/lib64目录下,此方法已经得到验证可以解决以上问题,需要此文件连接博主

备注:参考文档:./mongod的时候提示找不到共享库文件libcrypto.so.10 - 简书

安装MongoDB成功,启动的时候提示找不到共享库文件libcrypto.so.10-CSDN博客

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值