RPM 자체가 아닌 패키지의 파일을 확인하는 방법

RPM 자체가 아닌 패키지의 파일을 확인하는 방법

예를 들어 시스템에 설치된 이후 변경되지 않았는지 rpm확인할 수 있는 방법이 있습니까 ? 전체 RPM으로 이 작업을 수행할 수 있다는 것을 알고 있지만 내장된 체크섬 기능이나 이와 유사한 기능을 사용하여 단일 파일이나 구성 파일로 이 작업을 수행 /etc/pam.d/system-auth할 수 있는지 궁금합니다 . rpm레드햇 리눅스 5/6.

답변1

사용:

rpm -Vf /etc/pam.d/system-auth

이 경우 rpm파일이 심볼릭 링크이기 때문에 어떤 패키지에도 속하지 않는다고 불평합니다. 이 경우 심볼릭 링크가 아닌 실제 파일에 대해 명령을 실행해야 합니다.

rpm -Vf /etc/pam.d/system-auth-ac

답변2

나는 이 질문이 오래 전에 질문/답변되었다는 것을 알고 있지만 그것이 정확하다고 생각하지 않습니다(행동이 변경되었을 수도 있지만 rpm그렇게 생각하지 않습니다).

rpm -Vf ${FILE}패키지를 식별하기 위해 지정된 파일을 사용하는 것처럼 보이지만( 이렇게 하는 것처럼), 그런 다음 항상 수행되는 rpm -qf전체 패키지의 유효성을 검사합니다 .rpm -V

단일 파일의 세부 정보만 얻으려면 가장 간단한 해결책은 다음과 같습니다.

rpm -vf ${FILE} | grep ${FILE}

"설치 이후 이 파일이 수정되었습니까?" 상태를 표시하려면 다음을 수행할 수 있습니다.

FILE=/etc/pam.d/system-auth
if rpm -vf ${FILE} | grep -q ${FILE}
then
    echo "${FILE} has been modified"
fi

관련 정보