
因此,我嘗試升級 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: error while loading shared libraries: libcrypto.so.10:
換句話說,我現在陷入了第 22 條軍規;我無法使用yum
、wget
、curl
、rpm (with url)
或rsync (by connecting to a backup server instance)
因為它們都需要 ssl lib 檔案。
我什至無法打開到有問題的伺服器的新 SSH,因為 SSL lib 檔案現在已經消失了。 (只能使用現有的 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,不難找到一些東西)