방금 컴파일하고 설치했습니다.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