读取同一用户拥有的目录的权限被拒绝

读取同一用户拥有的目录的权限被拒绝

我的 Ubuntu 机器上有两个用户。其中一个在 sudoers 列表中,而另一个不在 sudoers 列表中。我在第一个用户的主目录中创建一个目录。然后我将该目录的所有权更改为其他用户。现在,当我切换到其他用户并尝试读取此目录时,它显示权限被拒绝。

我使用了chownwith-R所以它适用于目录内的所有内容。

显示ls -l了这个

drwxr-xr-x 2 lfs  lfs   4096 Mar 23 02:07 sources

lfs成为第二个用户。

答案1

这是与您上述问题相关的评论中@Kusalananda 问题的后续内容。

假设您有两个用户,user1并且user2。假设user1有一个主目录/home/user1。现在假设在user1您的主目录中创建一个由 拥有的目录user2,比如说/home/user1/sources,可以user2访问该目录吗?

为了能够user2访问/home/user1/sources, thenuser2需要x对从 root 到该目录(包括该sources目录)的每个目录具有(遍历)权限:

$ ls -ld /
dr-xr-xr-x 31 root root 4096 Feb 28 11:37 /
         ^ Check (this will almost always be OK)

$ ls -ld /home
drwxr-xr-x 4 root root 4096 Feb 28  11:38 /home
         ^ Check (this will almost always be OK)

$ ls -ld /home/user1
drwx------ 9 user1 group1 4096 Mar 21 00:36 /home/user1
      ^  ^ In this case, no, user2 cannot traverse here

$ ls -ld /home/user1/sources
drwxr-xr-x 9 user2 group2 4096 Mar 21 00:36 /home/user1/sources
   ^ Check

在此示例中,由于user2无法遍历到/home/user1,因此user2无法访问/home/user1/sources(即使user2拥有该目录)。

在您的问题中,您说该sources目录位于第一个用户的主目录中。我的猜测是第二个用户无法访问第一个用户的主目录。

您可以考虑将该sources目录放置在用户主目录之外的某个位置。

相关内容