.rpm打开失败:权限被拒绝


10

每当我尝试安装已下载的.rpm时,都会得到:

> sudo rpm -i something.rpm
error: open of something.rpm failed: Permission denied

转速的选择似乎无关紧要。我首先修改了.rpm(777),但没有任何区别。我想念什么?使用rpm -i -v不会显示任何其他信息。

系统是RHEL6 64位。


您能显示sudo -l
不现在

SELinux,也许吗?
derobert

Answers:


11

如果rpm文件位于主目录中,而主目录位于NFS上,则root可能无法访问它。这有点不寻常:通常,root用户可以访问每个文件。但是在普通设置中,当root用户访问通过NFS挂载的目录时,nobody将使用用户权限而不是root用户。主要目的是确保客户端上的root用户不能以服务器上root用户的身份操作文件。之所以这样实现,是因为“ root具有没有人的权限”而不是“ root可以具有执行root的任何人的权限”,主要是因为这很容易(尽管可能有其他原因:某些NFS服务器将此权限应用于root以外的用户,以便保护服务器上的所有系统用户)。

如果这是问题所在,则需要使rpm文件和包含该文件的目录都可以由root用户访问。这意味着使用户可以访问它们nobody,通常,唯一的方法是使文件和目录在世界范围内可读。更确切地说,最小权限是

chmod a+x .
chmod a+r something.rpm

或者,将rpm文件移动到本地目录。

mv something.rpm /tmp
sudo rpm -i /tmp/something.rpm

1
绝对可以,谢谢您的快速回答。
2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.