openssl尽量不要动啊,成功恢复记录

11 篇文章 0 订阅

问题说明:

起因:下载的elinks不能启动

[root@wtstb lib]# elinks http://127.0.0.1:5000
elinks: error while loading shared libraries: libssl.so.3: cannot open shared object file: No such file or directory
[root@wtstb lib]# ll libssl*
lrwxrwxrwx 1 root root     13 Jul  7 09:23 libssl.so -> libssl.so.1.1
-rwxr-xr-x 1 root root 463304 Jul  7 09:23 libssl.so.1.1
[root@wtstb lib]# 

检查并升级了openssl

[root@wtstb pacman.d]# pacman -Q openssl
openssl 1.1.1.q-1
[root@wtstb pacman.d]# pacman -S openssl
resolving dependencies...
looking for conflicting packages...

Packages (1) openssl-3.0.7-2

新的问题,严重了:pacman命令不能执行了。

[root@wtstb lib]# pacman
pacman: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory
[root@wtstb lib]# openssl version
OpenSSL 3.0.7 1 Nov 2022 (Library: OpenSSL 3.0.7 1 Nov 2022)

处理步骤

在官网https://archlinux.org/packages/ 搜索包,得到有1.1.1.s-2版本
https://archlinux.org/packages/core/x86_64/openssl-1.1/
右侧有个链接:Download From Mirror
地址为 https://archlinux.org/packages/core/x86_64/openssl-1.1/download/
下载命令都崩溃了。

[root@wtstb tmp]# curl -v 
curl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
[root@wtstb tmp]# aria2c -v
aria2c: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory

只能从其他机器下载,然后拷贝进去。
新建ssh窗口失败

Remote side unexpectedly closed network connection

原来打开的ssh窗口也不能开启sftp窗口了。
还好,原来安装了rz,可以直接拉文件进去。

[root@wtstb tmp]# rz
rz waiting to receive.**
[root@wtstb tmp]# ll open*
-rw-rw-rw- 1 root root 1844827 Nov 26 22:24 openssl-1.1-1.1.1.s-2-x86_64.pkg.tar.zst

tar -I zstd -xvf openssl-1.1-1.1.1.s-2-x86_64.pkg.tar.zst

还好,顺利解压成功,拷贝过去

[root@wtstb tmp]# cp -p usr/lib/libcrypto.so.1.1 /usr/lib/
[root@wtstb tmp]# cp -p usr/lib/libssl.so.1.1 /usr/lib/

我去,没有恢复。

[root@wtstb tmp]# pacman
pacman: error while loading shared libraries: libcrypto.so.1.1: wrong ELF class: ELFCLASS64

ELF是x86_64架构的文件,我的arm。大意了,还得另外去搞文件。
删除这个有问题的,注意别删错啊
[root@wtstb tmp]# rm -r .BUILDINFO .MTREE .PKGINFO usr/

https://archlinuxarm.org/packages 输入openssl
选择架构和版本
https://archlinuxarm.org/packages/armv7h/openssl-1.1
找到个镜像 https://mirrors.aliyun.com/archlinuxarm

[root@wtstb tmp]# ll op*
-rw-rw-rw- 1 root root 1421952 Nov 26 22:46 openssl-1.1-1.1.1.s-2-armv7h.pkg.tar.xz

把-I的参数zstd换为xz,解压了

tar -I xz -xvf openssl-1.1-1.1.1.s-2-armv7h.pkg.tar.xz

重新拷贝一下。
问题解决了,ssh登录成功。

[root@wtstb tmp]# pacman -h
usage:  pacman <operation> [...]

其他隐患:未知。
拷贝防身

[root@wtstb tmp]# cp -p usr/bin/openssl-1.1 /usr/bin/

其他的include,license不管。2个.so文件只是链接。
其他就是2个目录可能有影响了,到时候再说吧。

[root@wtstb tmp]# ls -l usr/lib/openssl-1.1/
total 0
drwxr-xr-x 2 root root 100 Nov  6 00:05 engines-1.1
lrwxrwxrwx 1 root root  19 Nov  6 00:05 libcrypto.so -> ../libcrypto.so.1.1
lrwxrwxrwx 1 root root  16 Nov  6 00:05 libssl.so -> ../libssl.so.1.1
drwxr-xr-x 2 root root 100 Nov  6 00:05 pkgconfig
[root@wtstb tmp]# cd usr/lib/openssl-1.1/
[root@wtstb openssl-1.1]# pwd
/tmp/usr/lib/openssl-1.1
[root@wtstb openssl-1.1]# tree
.
├── engines-1.1
│   ├── afalg.so
│   ├── capi.so
│   └── padlock.so
├── libcrypto.so -> ../libcrypto.so.1.1
├── libssl.so -> ../libssl.so.1.1
└── pkgconfig
    ├── libcrypto.pc
    ├── libssl.pc
    └── openssl.pc

2 directories, 8 files
[root@wtstb openssl-1.1]# 

应该问题不大,自己折腾的机器。

[root@wtstb openssl-1.1]# ls -l /usr/lib/openssl*
ls: cannot access '/usr/lib/openssl*': No such file or directory

之前检查失败的,现在都正常了。

systemctl restart sshd

新开窗口ssh登录成功。
reboot一把,ssh没有问题。

总结:

1、建议安装上lrzsz

[root@wtstb ~]# pacman -Ss lrzsz
community/lrzsz 0.12.20-8 [installed]
    xmodem, ymodem and zmodem file transfer protocols

安装使用-S,去掉后面的小s哦。
2、有问题,不要急于重启,注意保持当前窗口正常连接,比如top起。
3、最重要的openssl不要随便动。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值