
Ich habe also versucht, OpenSSL zu aktualisieren und habe beschlossen, die vorhandenen OpenSSL-Pakete zu entfernen, da sie aus einem anderen Repository stammten.
Nach dem Entfernen kann ich weder Yum noch Wget wieder zum Laufen bringen, da sie alle auf SSL angewiesen zu sein scheinen
Mir fehlen die Dateien
libssl.so.10
libcrypto.so.10
Ich konnte die Wiederherstellung durchführen, libssl.so.10
indem ich libssl3.so
das lokal vorhandene Programm verwendete, mit dem ich jedoch libcrypto.so.10
noch nicht arbeiten konnte (da diese Datei wahrscheinlich von einem Remotestandort heruntergeladen werden muss).
lecker:
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:
Mit anderen Worten, ich befinde mich jetzt in einer Zwickmühle: Ich kann yum
, wget
, curl
, rpm (with url)
, oder nicht verwenden rsync (by connecting to a backup server instance)
, da sie alle SSL-Bibliotheksdateien erfordern.
Ich kann nicht einmal ein neues SSH zum problematischen Server öffnen, da die SSL-Bibliotheksdateien jetzt weg sind. (Zugriff nur mit vorhandener Putty-Eingabeaufforderung möglich).
Ich versuche, den Dateiinhalt mit dem VIM-Editor unter Verwendung eines anderen Snapshot-Backups zu „kopieren und einzufügen“, aber das scheint nicht zu funktionieren.
Ich überlege, ob es eine Möglichkeit gibt, ein RPM oder sogar eine einzelne Datei über einfaches HTTP mit vorhandenen Tools herunterzuladen, die oben nicht aufgeführt sind ...
Antwort1
NICHT SO GUT. Versuchen Sie, --force
den RPM-Befehl zu vermeiden, es sei denn, Sie wissen, was Sie tun.
Um zu versuchen, einen annehmbaren Zustand wiederherzustellen, sodass Sie eine ordnungsgemäße Wiederherstellung versuchen können, führen Sie Folgendes vom Backup oder einem anderen identischen Server aus:
# tar cfz - $(rpm -ql openssl) | base64 > oh_my_god_what_did_I_do
Kopieren Sie die Ausgabe davon (in der oh_my_god_what_did_I_do
Datei) in die Zwischenablage und fügen Sie sie auf dem anderen Server ein:
# cat > oh_my_god_what_did_I_do
(paste here)
^D
# cd /; base64 -d < oh_my_god_what_did_I_do | tar xfz -
Viel Glück.
(Wenn Sie versiert sind, können Sie sich andere Möglichkeiten zum Verschieben der Datei ausdenken. NFS, Netcat, es ist nicht schwer, etwas zu finden.)