![로컬에 설치된 라이브러리를 제거하는 방법은 무엇입니까?](https://linux55.com/image/32076/%EB%A1%9C%EC%BB%AC%EC%97%90%20%EC%84%A4%EC%B9%98%EB%90%9C%20%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%9F%AC%EB%A6%AC%EB%A5%BC%20%EC%A0%9C%EA%B1%B0%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
방금 컴파일하고 설치했습니다.libc
내 홈 디렉토리에 로컬로. 불행하게도 이 후에는 거의 모든 기본 유틸리티가 작동 ls
하지 않습니다 xz
.
다음을 실행할 때 오류 메시지가 표시됩니다 ls
.
ls: error while loading shared libraries: __vdso_time: invalid mode for dlopen(): Invalid argument
Google에서 조사한 결과 문제를 해결하려면 이러한 기본 도구를 다시 컴파일하고 다시 연결해야 한다는 사실을 알게 되었는데, 이는 다소 까다로워 보였습니다. 그래서 libc
방금 설치한 라이브러리를 간단히 제거하기로 결정했습니다 .
libc
및 에서 ~/lib
로컬로 설치된 버전을 제거하는 방법은 무엇입니까 ~/include
?~/lib
를 설치하기 전에 많은 라이브러리를 설치했기 libc
때문에 많은 파일이 추가되었습니다. 그 결과 지금은 모든 것이 혼란에 빠졌습니다.
편집하다:
마지막 수정 시간을 기준으로 파일을 조건부로 삭제하면 이 문제를 해결할 수 있을 것 같습니다. 더 깨끗한 솔루션이 있습니까?
답변1
불필요한 라이브러리 파일을 제거했습니다.
find -mtime -1 -maxdepth 1 -exec rm -rf {} \;
현재 디렉터리에서 하루 이내에 수정된 파일 및 디렉터리를 찾아 모두 삭제합니다.
답변2
수행해야 할 작업은 새로 설치된 파일이 설치된 위치와 배포판의 위치에 따라 다릅니다. 설치되도록 구성한 경우 /usr/local/lib
제거하면 ls
원본이 아래에서 다시 찾을 수 있습니다 /usr/lib
.
일반적으로 설치하는 위치를 덮어쓰면 설치 프로그램이 더 이상 작동하지 않을 수 있으므로 예를 들어 Ubuntu에서 libc6을 다시 설치해야 합니다.
sudo apt-get install --reinstall libc6