OpenSSL是Linux的基础库,在进行升级后可能会引起一些问题,导致一些程序无法正常运行,我在安装MongoDB和MySQL时就因为找不到libcrypt.so.10和libssl.so.10库,导致启动失败。
其实引起这个问题就是因为OpenSSL版本不一致导致的,新版本的SSL把1.1版本的库替换了老的1.0库,导致有些程序不兼容。
解决办法:
从正常运行MongoDB和MySQL的其他机器上找到libcrypt.so.1.0和libssl.so.1.0文件,复制到问题机器的/lib64目录下,在创建1.0版本的符号链接。
在有正常1.0版本的libcrypt.so.10和libssl.so.10机器上执行如下命令:
scp libcrypto.so.1.0.2k 目标机器:/lib64/
scp libssl.so.1.0.2k 目标机器:/lib64/
在不正常的机器上创建1.0版本的符号链接
cd /usr/lib64/
ls -l libcrypto.*
ln -sf libssl.so.1.0.2k libssl.so.10
ln -sf libcrypto.so.1.0.2k libcrypto.so.10
ldd /usr/bin/wget 可以看到程序链接的位置,在通过符号链接来解决