Назад | Перейти на главную страницу

Получение различий для изменений файлов, обнаруженных с помощью rpm -V

У меня есть установка, в которую были внесены изменения, и я хочу узнать, что именно было изменено.

Я могу бегать

rpm -V MY_PACKAGES

который дает мне список измененных файлов. Теперь я ищу удобный способ увидеть различия (при условии, что все файлы имеют текстовое содержимое) по сравнению с исходными rpms (которые у меня есть).

Каким будет самый простой способ сделать это, учитывая, что я имею дело с ~ 20 пакетами и ~ 200 измененными файлами. Есть что-то вроде "rpm diff" ???

#
# Install yumdownloader 
#
yum install yum-utils

#
# search modified files (in this case: from pam_ldap)
#
rpm -V pam_ldap
S.5....T.  c /etc/pam_ldap.conf

#
# make tmp-dir and download rpm
#
mkdir Temp
cd Temp
yumdownloader pam_ldap

#
# extract rpm to current folder
#
rpm2cpio pam_ldap-185-11.el6.x86_64.rpm  | cpio -idmv

#
# check diff
#
diff etc/pam_ldap.conf /etc/pam_ldap.conf


rpm -V explained: 

    c %config configuration file.
    d %doc documentation file.
    g %ghost file (i.e. the file contents are not
    included in the package payload).
    l %license license file.
    r %readme readme file.

    S file Size differs
    M Mode differs (includes permissions and file type)
    5 MD5 sum differs
    D Device major/minor number mismatch
    L readLink(2) path mismatch
    U User ownership differs
    G Group ownership differs
    T mTime differs