데비안 패키지에 더 이상 사용되지 않는 파일을 표시하는 명령이 있습니까?

데비안 패키지에 더 이상 사용되지 않는 파일을 표시하는 명령이 있습니까?

내 문제는 반복되는 상황에서 비롯됩니다. 예를 들어: 최근 업데이트된 Debian 설치에서 파일(/etc/modprobe.d/radeon-kms.conf)을 찾았는데, 그 파일이 더 이상 존재하지 않아야 한다는 것을 알았습니다( xserver- xorg -video-radeon 패키지는 2015년부터 이를 제거했습니다) 파일이 해당 경로에 여전히 존재합니다.

그래서 명령을 실행하면

dpkg -S /etc/modprobe.d/radeon-kms.conf 

dpkg는 이를 xserver-xorg-video-radeon 패키지에 속하며

dpkg -L xserver-xorg-video-radeon 

출력으로 생성된 목록의 끝에 경로를 표시합니다.

그러나 이 파일은 최근 패키지의 일부가 아닙니다. 실제로 더 최신이지만 동일하게 업데이트된 다른 설치에서는 이런 일이 발생하지 않습니다. dpkg -L xserver-xorg-video-radeon은 이 파일을 목록에 표시하지 않습니다.

패키지가 소유한 것으로 선언된 파일과 실제로 패키지에 포함된 파일 사이의 다른 불일치를 어떻게 찾을 수 있습니까? 또는 원래 패키지가 여전히 경로를 포함하고 있는지 확인하기 위해 dpkg/apt를 쿼리하려면 어떻게 해야 합니까?

답변1

이 파일은 패키지에 속하지 않습니다. 파일은 패키지 설치 프로그램에서 생성할 수 있지만 그 이후에는 파일일 뿐입니다. 패키지 제거 프로그램은 패키지에 언급된 파일 목록을 기반으로 파일을 제거합니다.

패키지의 새 버전이 특정 파일이 동일한 패키지의 이전 버전의 일부라는 사실을 모르는 경우 그게 전부입니다. 다른 수단(역사 문서 또는 이전 버전의 패키지 찾기)을 통해 직접 배우지 않는 한, 실제로 고아가 됩니다.

그러나 기존 패키지의 파일 목록을 가져올 수 있습니다.

dpkg --listfiles <package>

설치된 모든 패키지에 대해 이 명령을 실행하면 보존해야 하는 파일 목록을 얻을 수 있습니다. 따라서 실제로 가지고 있는 파일 목록에서 해당 목록을 빼면 잠재적인 고아 파일 목록이 표시됩니다. 그러나 이러한 파일이 실제인지 아니면 일부 응용 프로그램(구성 파일, 일부 데이터 파일 또는 다른 패키지의 파일)에 의해 작성된 것인지 여부는 해결해야 할 미스터리입니다.

관련 정보