특정 구성 파일을 제공하는 패키지는 무엇입니까?

특정 구성 파일을 제공하는 패키지는 무엇입니까?

비슷한 것이 있지만 dpkg -S <file>예를 들어 구성 파일의 경우입니까 /etc/samba/smb.conf? 나는 그들이 에서 생성된 것 같아요 dpkg-reconfigure.

user@host:~$ dpkg -S /etc/samba/smb.conf
dpkg-query: no path found matching pattern /etc/samba/smb.conf

답변1

dpkg -S관리자 스크립트(또는 기타 도구)에 의해 생성된 구성 파일이 아닌 패키지에 직접 제공된 구성 파일만 찾을 수 있습니다. 후자에 대한 보편적인 해결책은 없지만 파일에 대한 참조를 찾는 것이 /var/lib/dpkg/info최선의 선택입니다. 이 경우:

$ grep -rl /etc/samba/smb.conf /var/lib/dpkg/info
/var/lib/dpkg/info/samba-common.config
/var/lib/dpkg/info/samba-common.postinst
/var/lib/dpkg/info/samba-common.postrm
/var/lib/dpkg/info/samba-common.templates

samba-common이는 파일이 다음에 의해 관리됨을 나타냅니다. 문서 를 읽어보면 postinst이를 확인할 수 있습니다.

답변2

Stephen Kitt의 답변이 아마도 최고일 것입니다. 그러나 그러한 답변을 찾을 수 없다면 시도해 볼 수도 있습니다 etckeeper. 데비안과 우분투에는 기본으로 설치되어 있지 않지만 저장소에 있어서 간단한 조작이 apt install etckeeper가능합니다.

Etckeeper를 /etc사용하면 (git) 버전 관리를 받을 수 있습니다. 그 중 하나는 패키지가 설치/업데이트될 때마다 자동 커밋입니다.

이제 cd /etc && sudo git blame somefile조정된 시간을 확인하고 해당 날짜를 검색할 수 있습니다./var/log/dpkg*

작업량이 많지만 dpkg -S찾을 수 없을 때 작동해야 합니다.

관련 정보