libssl.so1.1: cannot open shared object file 발생 원인과 해결

RHEL 8 버전 이상을 사용할 때 libnsl.so.1 라이브러리가 존재하지 않아 타 애플리케이션을 사용할 수 없는 경우가 발생합니다. 레드햇 8버전부터는 기본값으로 해당 패키지가 존재하지 않기 때문에 발생하는 문제입니다. 이럴 땐 libnsl 패키지를 설치해주면 문제를 해결할 수 있습니다.

libssl not found

에러 발생 형태

다음과 같은 에러가 발생합니다.

openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
공유된 라이브러리를 로드하는 중 오류 발생: libnsl.so.1: 공유된 개체 파일을 열 수 없음: 파일 또는 디렉토리가 없습니다.

원인

라이브러리를 찾을 수 없을 때 not found가 출력됩니다. 원인은 실제로 라이브러리가 없거나, LD_LIBRARY_PATH 환경변수가 설정되어 있지 않거나, 시스템이 원하는 이름으로 라이브러리명이 네임드되어 있지 않거나 중 하나입니다.

해결

우선 해당 라이브러리가 실제로 있는지 확인하려면 find 명령어를 이용하면 됩니다. 이는 이 글에서 다루는 libssl이 아니더라도 라이브러리 not found가 발생했을 때 우선적으로 확인해 볼 필요가 있는 조치입니다.

find / -name “*libssl*”

라이브러리가 있음에도 not found가 발생하는 것이면 LD_LIBRARY_PATH 설정 또는 심볼릭 링크 설정 확인하시면됩니다.

 

패키지가 없는 거면 설치를 진행합니다. 인터넷이 연결된 환경이면 간단하게 yum을 사용합니다. 그렇지 않으면 rpm 패키지를 설치합니다.

yum install libnsl

libnsl이란?

libnsl 패키지는 애플리케이션 네트워킹 서비스에 대한 전송 수준 인터페이스, 데이터 표현 등의 함수를 포함하고 있다고 합니다. 이 패키지가 없을 때 작동하지 못하는 애플리케이션이 여럿 있습니다.

반응형

댓글

Designed by JB FACTORY