Linux에서 애플리케이션 설치 중 파일이 설치된 위치 추적

Linux에서 애플리케이션 설치 중 파일이 설치된 위치 추적

특정 공급업체(예: nvidia, cisco...)의 일부 독점 패키지를 설치해야 합니다. 설치 중에 파일을 내 파일 시스템( /usr/share/,,,...) 으로 복사하는 일부 바이너리 설치 파일이 있습니다 . 하지만 정확히 무엇인지, 어디에 있는지는 모르겠습니다. 이 앱을 설치하려고 할 때 제거 바이너리가 없으며 앱 파일을 삭제하는 데 문제가 있을 수 있습니다./etc//usr/bin/

파일이 복사된 위치를 추적할 수 있는 도구가 Linux에 있습니까?

Linux 배포판에 의존하지 않는 일반적인 솔루션을 찾고 싶습니다. 내 비전은 비슷합니다 track ./install.bin. 출력은 조작된 파일이 됩니다.

내 시스템에 비슷한 도구가 없습니다.위치.

답변1

가장 간단한 방법: find.

가장 간단한 방법(가장 쉬운 의미, 추가 도구를 설치할 필요가 없고 입력하기 쉬움)은 설치 전후의 모든 파일 목록을 저장한 다음 목록을 비교하는 것입니다.

당신은 들어갈 수 있습니다

find / -xdev \( -name home -o -name mnt -o -name proc --o -name dev o -name sys \) -prune -o -print | sort > /root/files-before-install

그런 다음 프로그램을 설치하고

find / -xdev \( -name home -o -name mnt -o -name proc -o -name dev -o -name sys \) -prune -o -print | sort > /root/files-after-install

(마지막에 다른 파일 이름을 기록해 두십시오)

그런 다음 다음과 같이 파일을 비교할 수 있습니다.

diff /root/files-before-install /root/files-after-install

이렇게 하면 변경된 파일이 아닌 새 파일만 표시되므로 검색이 더욱 복잡해집니다. 또한 설치 프로그램이 "home", "mnt", "sys", "proc" 또는 "dev"라는 이름의 파일이나 디렉터리를 생성할 확률이 0이 아니지만, 이 확률은 매우 낮다고 생각합니다. .

답변2

설치 확인설명대로 정확하게 작동합니다. 설치 프로그램 프로세스에서 수행된 파일 시스템 변경 사항을 모니터링하고 모두 롤백하는 방법을 제공합니다.

설치 기록을 여러 플랫폼( , RPM 등)에 대한 일반 패키지로 변환하는 방법이 있지만 .deb이 도구는 이를 원하지 않거나 패키지 관리자가 직접 지원하지 않는 경우에도 유용합니다.

관련 정보