文件权限问题

文件权限问题

我正在尝试设置一个 Minecraft 服务器,我决定以受限用户的身份运行该服务器,该用户只能访问 Minecraft 服务器目录。我无法让用户获得权限,即使我将所有者设置为用户,并将 777 设置为目录。因此,我将目录的访问权限设置为 777,但我仍然无法访问该目录。您知道我遗漏了什么吗?谢谢,Max

编辑:好的,我通过打开 minecraft 服务器文件夹所在的目录解决了这个问题。这总是需要的吗?例如:我的服务器在/srv/minecraftServer/minecraftServerserver用户打开了,但没有srv。当我打开时srv(允许受限用户也查看我的网络主机,不再是真正的受限用户),用户可以访问目录minecraftServer。这是正常的吗?有办法解决这个问题吗?

答案1

永远永远永远不要使用 777 权限作为修复!

好的,现在我已经解决了这个问题......

查看目录的权限时,要记住这一点:用户必须对 / 和目标目录之间的所有目录具有执行权限。

对于文件权限,读/写/执行位是有意义的,但对于目录,它们的含义略有不同。读写表示您可以读取和写入目录内的文件,而执行表示您可以遍历目录(您可以通过“cd”进入目录)。

阅读权限 - 如果您理解不同的部分,那么就可以获得更多的控制。 http://en.wikipedia.org/wiki/Filesystem_permissions

永远不要使用 777 — 它(几乎)从来没有必要,而且它始终是一个坏主意。

答案2

或许设置了粘性位或类似的东西,这可能与目录继承权限有关。chmod尝试0777

答案3

套用 baumgart 的话,不要养成用 777 修复权限问题的习惯(我猜你的意思是“打开 minecraft 所在的目录”)。为了验证权限是否是问题,这样做可能没问题,但不应该这样。最有可能 755(或者如果你喜欢符号,则为 u=rwx,g=rx,o=rx)就是你所需要的。用户需要能够读取和执行才能进入目录。这是目录权限的工作方式,因此实际上没有任何方法可以解决这个问题。

通过使用访问控制列表,可以实现更精细的控制,但这会使权限变得相当混乱。不过,您仍然需要用户拥有读取和执行权限才能访问目录。

相关内容