我有一个linux系统。并且多个用户通过 ssh 登录。
所以我创建了多个用户帐户。
我遇到的问题是,其中一些用户需要在给定任务上进行合作,在这种情况下,我想为特定的用户列表提供对该文件夹的无限制访问权限。这样他们就可以在给定的文件夹中一起工作,但在其主文件夹中维护自己的设置。
我尝试过以下操作:
1. 使用 groupadd 选项创建一个组。
2. 将该组添加到所有这些用户。
3. 将要协作的文件夹组更改为给定组。
4. 将该文件夹的权限从 755 更改为 775,以便给定组获得写入权限。
但这不起作用,只有文件夹的所有者才能获得写入权限。
我该如何实现这一目标?
(一个非常自然的下一个问题是:使目录中的所有新文件可供组访问)
答案1
好的,您已经正确更改了组权限。然而,集团所有权是错误的。
当前的输出ls -l
显示目录的文件所有者和组所有者为tester
,即您创建目录所使用的帐户。这意味着只能tester
读取和写入该目录。
除了您所做的之外,您还必须更改组所有权目录的目录以及其中的所有文件,到您的组的目录,1
.针对此特定场景的解决方案请参见下文:
sudo chown -R tester:1 <folder>
该-R
开关告诉命令将此所有权更改递归地应用于文件夹内的文件和子目录(以及文件夹本身)。这将保留tester
为文件所有者并将组所有者更改为1
.或者,如果您根本1:1
不想参与,也可以使用。tester
将来,如果您想要拥有的不仅仅是简单的owner:group:everyone
权限,您应该考虑一下访问控制列表(ACL)。
答案2
更改一个或多个用户的组成员身份后,您需要注销并重新登录才能生效。从您上面的描述来看,您似乎没有这样做。有关此的更多信息这里。