Running "yum list <pattern>" as an unprivileged user sometimes crashes with a permission denied error. The crash seems reproducible for a given <pattern> on the system I'm testing, but it does not occur for some other patterns. The same command that fails for an unprivileged user succeeds and produces seemingly correct output when run as a privileged user (e.g. via sudo).<br />
<br />
Example session:<br />
<br />
[me@machine ~]$ yum list "xorg*-devel"<br />
Loaded plugins: fastestmirror, kabi, presto, priorities, protectbase, refresh-<br />
: packagekit, security<br />
Loading support for CentOS kernel ABI<br />
Loading mirror speeds from cached hostfile<br />
* elrepo: repos.dfw.lax-noc.com<br />
131 packages excluded due to repository priority protections<br />
0 packages excluded due to repository protections<br />
Traceback (most recent call last):<br />
File "/usr/bin/yum", line 29, in <module><br />
yummain.user_main(sys.argv[1:], exit_code=True)<br />
File "/usr/share/yum-cli/yummain.py", line 285, in user_main<br />
errcode = main(args)<br />
File "/usr/share/yum-cli/yummain.py", line 136, in main<br />
result, resultmsgs = base.doCommands()<br />
File "/usr/share/yum-cli/cli.py", line 438, in doCommands<br />
return self.yum_cli_commands[self.basecmd].doCommand(self, self.basecmd, self.extcmds)<br />
File "/usr/share/yum-cli/yumcommands.py", line 311, in doCommand<br />
columns = _list_cmd_calc_columns(base, ypl)<br />
File "/usr/share/yum-cli/yumcommands.py", line 277, in _list_cmd_calc_columns<br />
_add_pkg_simple_list_lens(data, pkg)<br />
File "/usr/share/yum-cli/yumcommands.py", line 264, in _add_pkg_simple_list_lens<br />
rid = len(pkg.ui_from_repo)<br />
File "/usr/lib/python2.6/site-packages/yum/packages.py", line 710, in <lambda><br />
ui_from_repo = property(fget=lambda self: self._ui_from_repo())<br />
File "/usr/lib/python2.6/site-packages/yum/packages.py", line 702, in _ui_from_repo<br />
if self.repoid == 'installed' and 'from_repo' in self.yumdb_info:<br />
File "/usr/lib/python2.6/site-packages/yum/rpmsack.py", line 1847, in __contains__<br />
x = self.get(attr)<br />
File "/usr/lib/python2.6/site-packages/yum/rpmsack.py", line 1877, in get<br />
res = self._read(attr)<br />
File "/usr/lib/python2.6/site-packages/yum/rpmsack.py", line 1794, in _read<br />
info = misc.stat_f(fn)<br />
File "/usr/lib/python2.6/site-packages/yum/misc.py", line 946, in stat_f<br />
return os.stat(filename)<br />
OSError: [Errno 13] Permission denied: '/var/lib/yum/yumdb/x/b9018cd29d3945af86e66e8e443988e6c36f3886-xorg-x11-proto-devel-7.6-13.el6-noarch/from_repo'<br />
<br />
<br />
Example with sudo:<br />
[me@machine ~]$ sudo yum list "xorg*-devel"<br />
Loaded plugins: fastestmirror, kabi, presto, priorities, protectbase, refresh-<br />
: packagekit, security<br />
Loading support for CentOS kernel ABI<br />
Loading mirror speeds from cached hostfile<br />
* elrepo: repos.dfw.lax-noc.com<br />
adobe-linux-x86_64 | 951 B 00:00 <br />
adobe-linux-x86_64/primary | 1.2 kB 00:00 <br />
adobe-linux-x86_64 2/2<br />
base | 3.7 kB 00:00 <br />
base/primary_db | 4.5 MB 00:00 <br />
elrepo | 1.9 kB 00:00 <br />
elrepo/primary_db | 424 kB 00:00 <br />
epel | 4.0 kB 00:00 <br />
epel/primary_db | 4.4 MB 00:00 <br />
extras | 3.0 kB 00:00 <br />
extras/primary_db | 6.3 kB 00:00 <br />
graphviz-stable | 951 B 00:00 <br />
graphviz-stable/primary | 8.1 kB 00:00 <br />
graphviz-stable 31/31<br />
local | 1.9 kB 00:00 <br />
local/primary_db | 342 kB 00:00 <br />
updates | 1.9 kB 00:00 <br />
updates/primary_db | 854 kB 00:00 <br />
131 packages excluded due to repository priority protections<br />
0 packages excluded due to repository protections<br />
Installed Packages<br />
xorg-x11-proto-devel.noarch 7.6-13.el6 @base<br />
Available Packages<br />
xorg-x11-drv-evdev-devel.i686 2.6.0-2.el6 base <br />
xorg-x11-drv-evdev-devel.x86_64 2.6.0-2.el6 base <br />
xorg-x11-drv-intel-devel.i686 2.16.0-4.el6 base <br />
xorg-x11-drv-intel-devel.x86_64 2.16.0-4.el6 base <br />
xorg-x11-drv-openchrome-devel.i686 0.2.904-4.el6 base <br />
xorg-x11-drv-openchrome-devel.x86_64 0.2.904-4.el6 base <br />
xorg-x11-drv-synaptics-devel.i686 1.4.1-3.el6 base <br />
xorg-x11-drv-synaptics-devel.x86_64 1.4.1-3.el6 base <br />
xorg-x11-drv-wacom-devel.i686 0.13.0-6.el6 base <br />
xorg-x11-drv-wacom-devel.x86_64 0.13.0-6.el6 base <br />
xorg-x11-server-devel.i686 1.10.6-1.el6.centos base <br />
xorg-x11-server-devel.x86_64 1.10.6-1.el6.centos base <br />
xorg-x11-xtrans-devel.noarch 1.2.2-4.1.el6 base <br />
<br />
<br />
When I examine the directory named in the error message, I find that it has permissions 0750 and its contents have permissions 0640, whereas most of its siblings have permissions 0755/0644.
↧