因此我尝试升级 openssl 并决定删除现有的 openssl 包,因为它来自不同的存储库。
一旦删除,我就无法再让 yum 或 wget 工作了,因为它们似乎都依赖于 ssl
我丢失了文件
libssl.so.10
libcrypto.so.10
我可以libssl.so.10
通过使用libssl3.so
本地存在的文件进行恢复,但还不能libcrypto.so.10
(因为该文件可能需要从远程位置下载)。
美味:
The error leading to this problem was:
libcrypto.so.10: cannot open shared object file: No such file or directory
wget:
wget: error while loading shared libraries: libcrypto.so.10:
换句话说,我现在陷入了困境;我无法使用yum
、、、或者,因为wget
它们都需要 ssl lib 文件。curl
rpm (with url)
rsync (by connecting to a backup server instance)
由于 SSL lib 文件现在已经消失了,我甚至无法打开到有问题的服务器的新 SSH。(只能使用现有的 Putty 提示访问)。
我尝试使用另一个快照备份通过 VIM 编辑器“复制并粘贴”文件内容,但似乎不起作用。
我在想是否有办法使用上面未列出的现有工具通过纯 http 下载 rpm 甚至单个文件......
答案1
不太好。--force
除非您知道自己在做什么,否则请尽量避免使用 RPM 命令。
要尝试恢复到正常状态,以便您可以尝试正确的恢复,请从备份或另一个相同的服务器运行:
# tar cfz - $(rpm -ql openssl) | base64 > oh_my_god_what_did_I_do
将该输出(在文件中oh_my_god_what_did_I_do
)复制到剪贴板并将其粘贴到另一台服务器中:
# cat > oh_my_god_what_did_I_do
(paste here)
^D
# cd /; base64 -d < oh_my_god_what_did_I_do | tar xfz -
祝你好运。
(如果你够聪明,你可以想出其他方法来移动该文件。NFS、netcat,找到一些东西并不难)