실수로 libnss를 제거했기 때문에 rpm 및 yum을 실행할 수 없습니다. 어떻게 고치나요?

실수로 libnss를 제거했기 때문에 rpm 및 yum을 실행할 수 없습니다. 어떻게 고치나요?

이것은 Amazon RHEL 서버이며 다음을 실행하여 libnss를 제거했습니다.

rpm --nodeps -e nss-*;
package-cleanup --cleandupes;

이제 실행하면 rpm오류가 발생합니다.

rpm: 공유 라이브러리를 로드하는 중 오류가 발생했습니다. libnss3.so: 공유 개체 파일을 열 수 없습니다. 해당 파일 또는 디렉터리가 없습니다.

그리고 같은 오류 yum:

libnss3.so: 공유 개체 파일을 열 수 없습니다. 해당 파일이나 디렉터리가 없습니다.

지금 libnss를 다시 설치하는 방법은 무엇입니까?

답변1

rpm2cpio필요한 패키지를 수동으로 다운로드하여 사용 하고 추출 해야 합니다 cpio(필수 아님 libnss3). 가다패키지 브라우저(구독 정보 사용) nss링크를 찾아 클릭하여 RHEL 설치에 적합한 버전을 다운로드하세요. 서버에서 루트로 다음과 같이 압축을 풀어 "설치"합니다.

cd /
rpm2cpio /path/to/nss-....rpm | cpio -idmv

(필요에 따라 경로를 바꾸고 ...가지고 있는 버전을 사용하십시오).

그러면 라이브러리가 추출되어 rpm다시 사용할 수 있게 됩니다 yum. 그런 다음 누락된 다른 종속성과 함께 nss패키지를 올바르게 다시 설치 해야 합니다.yum

--no-deps앞으로는 이용하지 마시길 바랍니다!

답변2

위 답변에는 문제가 있습니다. Fedora/RHEL 버전에 따라 rpm2cpio가 libnss3에 종속될 수도 있습니다. RPM 패키지에서 cpio 파일을 추출하려면 다른 운영 체제가 필요합니다(Peazip이 이를 수행할 수 있음).

관련 정보