libcrypto.so.1.0.2k版本
- 背景:由于源码编译高版本的cmake3.20时,编译curlTest链接到系统
/usr/lib64
目录下的libcrypto.so->libcrypto.so.10
,libcrypto.so.10->libcrypto.so.1.0.2k
报错,提示需要更新libcrypto.so包,因此,在不严谨的情况下,把最终链接的系统库libcrypto.so.1.0.2k
删除,至此,后悔不已。 - 删除后,发现远程链接ssh命令和scp等操作均失效,坑已经挖下了,现在关键是如何补坑的问题,我看网上的解决方法需要光盘或U盘进行系统修复,才解决,这个办法太复杂且有风险。
解决办法
- 对于之前系统库
libcrypto.so.1.0.2k
若没有删除的情况下,只需要重新创建软连接即可! - 前提是须找到相同版本linux系统,copy出文件
libcrypto.so.1.0.2k
,由于远程复制和登录失效,所以只能本地登录拷贝,将文件libcrypto.so.1.0.2k
copy到U盘,系统挂载的方式进行物理复制到/usr/lib64
,重新创建软连接即可。 - 本方法须进入机房,本地操作服务器,但风险较小且相对简单。
- 对于无桌面版的系统,须终端挂载拷贝。命令如下
lsblk
mount /dev/sdc2 /mnt
cd /mnt/
ls
cp -a libcrypto.so.1.0.2k /usr/lib64/
cd /usr/lib64/
ll libcrypto.so*
unlink libcrypto.so.10
ln -sv /usr/lib64/libcrypto.so.1.0.2k libcrypto.so.10
ssh 192.168.1.20
- 经验总结:重要的事情说三遍
- 系统库千万别删,系统库千万别删,系统库千万别删
- 可以放在非系统环境目录下,进行备份,或者删除软连接,也不要删除系统物理库