On 09/16/14 19:19, Jonathan Billings wrote: > On Tue, Sep 16, 2014 at 10:16:37AM +0530, dE wrote: >> Hi. >> >> I've found inconstancy between output of repoquery and rpm. I was >> looking forward towards apache php 5.4 module which must provided by >> some package SCL (can someone tell me?). >> >> rpm -qf /etc/httpd/modules/mod_proxy.so >> httpd-2.2.15-29.el6.centos.x86_64 >> repoquery -qf /etc/httpd/modules/mod_proxy.so >> >> so repoquery results in no output >> >> yum list installed httpd >> Loaded plugins: fastestmirror >> Loading mirror speeds from cached hostfile >> * c6-media: >> Installed Packages >> httpd.x86_64 2.2.15-29.el6.centos @c6-media >> >> repoquery -qa httpd >> httpd-0:2.2.15-29.el6.centos.x86_64 >> >> No wonder libphp5.so results in no output. > The 'httpd' package actually contains the mod_proxy.so as > /usr/lib64/httpd/modules/mod_proxy.so. Running > 'repoquery -f /usr/lib64/httpd/modules/mod_proxy.so' will generate the > correct response. > > RPM, on the other hand, has the benefit of having a local filesystem > with the actual files installed. > > One of the first things that the 'rpm' command does is stat() the path > /etc/httpd/modules, discover it's a symlink, and then run the actual > path /usr/lib64/httpd/modules/mod_proxy.so through the RPM database. > The command is going to pass the 'real' location (as best it can find) > for any query with file paths. 'repoquery' doesn't have the benefit > of having the package installed, so it can't perform this local > lookup. It has to rely only on what the package manifest lists. > Yeah, but that's the problem running repoquery -f /usr/lib64/httpd/modules/mod_proxy.so does not give any output. rpm is actual package manage working under yum, so it job is to maintain the installed package, but I would expect repoquery (which's a part of yum and as the name suggests 'query the repository') to do the same for all added repositories, cause rpm is not responsible for that. And actually it does do that using the downloaded repodata (as you already know), but problem is it's no working all the time. For e.g. it works here -- repoquery -f /etc/htt\* htdig-web-4:3.2.0-0.10.b6.el6.x86_64 ipa-server-0:3.0.0-37.el6.x86_64 mod_revocator-0:1.0.3-10.el6.x86_64 php54-apc-panel-0:3.1.15-0.2.svn329724.el6.centos.alt.noarch mod_dav_svn-0:1.6.11-9.el6_4.x86_64 mod_perl-0:2.0.4-10.el6.x86_64 php-0:5.3.3-26.el6.x86_64 mod_authz_ldap-0:0.26-16.el6.x86_64 mod_dnssd-0:0.6-2.el6.x86_64 mod_auth_pgsql-0:2.0.3-10.1.el6.x86_64 php54-php-0:5.4.16-7.el6.centos.alt.x86_64 php54-php-0:5.4.16-7.el6.centos.alt.1.x86_64 httpd-0:2.2.15-29.el6.centos.x86_64 webalizer-0:2.21_02-3.3.el6.x86_64 mod_wsgi-0:3.2-3.el6.x86_64 php54-php-0:5.4.16-16.el6.centos.alt.x86_64 mrtg-0:2.16.2-7.el6.x86_64 gitweb-0:1.7.1-3.el6_4.1.noarch mod_auth_kerb-0:5.4-10.el6.x86_64 httpd-manual-0:2.2.15-29.el6.centos.noarch php54-apc-panel-0:3.1.15-0.4.20130912.el6.centos.alt.noarch squid-7:3.1.10-19.el6_4.x86_64 mod_nss-0:1.0.8-18.el6.x86_64 mod_auth_mysql-1:3.0.0-11.el6_0.1.x86_64 mod_ssl-1:2.2.15-29.el6.centos.x86_64 mailman-3:2.1.12-18.el6.x86_64