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

Modified on: Thu, 12 Jul 2018 01:10:30 +0800

每当我尝试安装一些.rpm我已经下载了,我得到了:

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

似乎rpm的选择并不重要。我先将.rpm(777)进行了chmod,但它并没有什么区别。我错过了什么?使用rpm -i -v不会显示任何其他信息。

系统是RHEL6 64位。

作者:Oak

最佳答案

如果您的rpm文件位于主目录中,并且您的主目录位于NFS上,则root可能无法访问它。这有点不寻常:通常,root可以访问每个文件。但是在通用设置中,当root访问通过NFS挂载的目录时,将使用用户nobody的权限而不是root用户。主要目的是确保客户端上的root无法以root身份在服务器上操作文件。这被实现为“root拥有nobody的权限”而不是“root可以拥有任何人的权限execpt 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
作者:Gilles

相关问答

添加新评论