원래 구성 파일을 /etc의 내용과 어떻게 비교합니까?

원래 구성 파일을 /etc의 내용과 어떻게 비교합니까?

여러 시스템을 구성 관리하는 일을 담당하고 있으며, 설치된 모든 패키지의 구성 파일을 다음과 비교하는 방법을 알고 싶습니다./etc 프로필로 표시된 파일이 포함된 기타 모든 장소. 예를 들어, 목표는 모든 변경 사항을 식별하고 해당 변경 사항을 문서화하여 Ansible 플레이북으로 변환할 수 있는 것입니다.

이 질문의 경우 모든 패키지가 최신 상태이고 패키지 저장소에서 사용할 수 있으며 일부 패키지는 여전히 로컬에 캐시되어 있다고 가정할 수 있습니다.

나의 주요 관심은 Debian 기반 컴퓨터(주로 Debian 자체 및 Ubuntu)에서 실행하는 것이지만 CentOS(또는 RHEL) 방식도 배우는 것도 좋을 것입니다. 그것이 다음 목표가 될 것이기 때문입니다.


본질적으로 나는 방법에 관심이 있습니다이것조금 더. 나는 알고 dpkg -c있고 의 열렬한 사용자이지만 etckeeper그것은 etckeeper비교에 도움이 되지 않습니다.정확히최신 패키지 설치의 기준입니다. 아마도 와 debsums -e의 조합이 일을 할 것입니다. 그러나 나는 이로 인해 고통받지 않을 것입니다.apt-fileapt-getNIH 증후군그리고 바퀴를 재발명하지 않기를 바랍니다.

답변1

RPM 세계에 대해 말하자면:

rpm -qc SOMEINSTALLEDPACKAGE

패키지에 대한 구성 파일 목록이 제공됩니다.

다음을 사용하여 원본 패키지와 비교하여 파일을 확인할 수 있습니다.

# sudo rpm -V chrony
S.5....T.  c /etc/chrony.conf

chrony다음은 구성 파일의 패키지 목록을 수정하는 예입니다.

또한 rpm은 설치 프로세스 중에 .rpmsave 및 .rpmnew 패키지를 생성할 수 있습니다. 바라보다https://serverfault.com/a/48819를 사용하여 이러한 파일을 병합할 수 있습니다 rpmconf.

관련 정보