Solaris

openssl 삭제시 에러 대책

알 수 없는 사용자 2008. 2. 27.
728x90

한소프트 아시아눅스 오픈에디션 3 초보 사용자입니다.

아시아눅스 자료실에 올라와있는 kasablanca란 ftp프로그램을설치하려다보니 libcrypto.so.5와 libssl.so.5 관련 의존성에러가 났습니다.
이래저래 웹서치를 통해 openssl-0.9.7f-7.i386.rpm이란 파일을 다운받아 설치하려니깐 또 다른 의존성 에러가 나서...
그냥 강제로 설치를 한 번 했습니다. ]# rpm -Uvh --nodeps openssl-0.9.7f-7.i386.rpm 이렇게요...

그리고 다시 kasablanca 설치를 시도했으나 의존성에러는 역시 똑같이 나길래 강제로 설치한 openssl을 삭제하기로 했습니다.
]# rpm -e openssl 이렇게 삭제하려니깐 그놈의... 또 다른 의존성에러가 또 나길래 이번에는 아예...
]# rpm -e --nodeps openssl 이렇게 해버렸는데 삭제 과정이 좀 오래 걸리는 것이 왠지 으시시했죠...

그리고... ㅠㅠ
삭제가 끝나고부터는 rpm 명령이 안먹네요. 아래처럼 나옵니다.
]# rpm
rpm: error while loading shared libraries: libssl.so.6: cannot open shared object file: No such file or directory
이거 어떻게 복구해야 하죠?
미치겠습니다... 흑흑

웹에서 openssl-0.9.8e.tar.gz와 openssl-engine-0.9.6m.tar.gz 두 개를 다운받아 설치했는데도 여전히 rpm은 같은 에러만 보여주네요.
rpm 명령이 안먹으니 rpm 패키지를 설치할 수도 없는 상황입니다.

고수님들... 도와주세요!!!

gbkwon의 이미지
1986
points

일단 임시 복구 방법은..

일단 임시 복구 방법은 /usr/lib/libssl.so.0.X.X 라는 파일이 있을겁니다.

이파일의 심벌릭 링크 파일을 만들면 아마두 될듯 합니다. 하지만 원래 버전이 다르니 된다고 장담은 할 수 없습니다.

ln -s /usr/lib/libssl.so.0.9.8 /usr/lib/libssl.so.6 정도로 하시면 될듯 합니다.

물론 /usr/lib/libssl.so.0.9.8 파일이 있다는 가정 에서 입니다.

알려 주신 정보로 짐작해 보면 /usr/lib/libssl.so.0.9.7이 있을 듯합니다.

참고 하세요.

익명 사용자의 이미지

잘은 모르겠지만...

위에 설명이 잘 되어있네요..
추가하자면.. 일반적으로 리눅스의 경우 통신 프로그램에서 ssl을 사용합니다.
이를 위해 공유라이브러리가 /lib/libssl.so.6 이란 이름으로 심볼릭 링크가 걸려 사용됩니다.
위의 경우는 링크가 삭제되거나 끊어진 경우라 생각됩니다.
이럴때는 위에 답변처럼 find / -name libssl.so.0.9.8b (페도라6 의 경우 기본)이 /usr/lib에 있을것이고 없다면 즉, 모두 지워졌다고 가정한다면
openssl.org에서 해당 버전의 소스파일을 받아 설치하시는것이 바람직합니다.

설치 파일이 openssl0.9.8e라면
설치시 openssl에서 ./config 설정에서 공유라이브러리 설치를 위해 shared 라는 옵션을 주면 /usr/local/ssl/lib/libssl.so.0.9.8 과 libssl.a 등의 파일들이 생성됩니다.
이걸 심볼릭으로 걸어 주시면 될듯합니다.

보통 openssl설치하면 libssl.so.0.9.8과 libcrypto.so.0.9.8이란 공유라이브러리가 생성됩니다. 이걸 /lib로 복사하세요
cp /usr/local/ssl/lib/libssl.so.0.9.8 /lib
cp /usr/local/ssl/lib/libcrypto.so.0.9.8 /lib
ln -s /usr/local/ssl/lib/libssl.so.0.9.8 /lib/libssl.so.6

728x90

댓글