用户权限

在Ubuntu上,我希望user1能够读/写/执行/删除user2的所有文件/文件夹

我已经把他们放在同一个小组下,但似乎没有这样做,

接近这个的正确方法是什么?

谢谢,

您需要将它们所在的组分配给用户2的所有文件。

chgrp usergroup somefile 

那么你需要组权限才能拥有rwx:

 chmod g+rwx somefile 

其中somefile是user2的文件

将两个用户放在同一个组中是不够的:缺省情况下,除非明确指出,否则文件不能写入组(除了chmod g+w )。 要更改大多数新创build文件的默认权限,请将umask 002行添加到~user1/.profile 。 此外,许多程序还会限制通常应保持私密的文件(密码文件,邮箱等)只能由用户读取; umask对此没有影响。

大部分时间工作的方式是使用访问控制列表。 首先,确保包含user2的主目录的文件系统使用acl选项(在Ubuntu 10.04上默认closures)。 安装acl软件包。 然后运行以下命令(警告,直接在浏览器中input)给user1所有访问user2的主目录中的文件,并默认将这个访问权限赋予新创build的文件:

 setfacl -m user:user1:rwx -R ~user2 setfacl -d -m user:user1:rwx -R ~user2 

如果user2将文件保存在其主目录之外,则也可以将此命令应用于其他目录。

最后,给user1这个直接访问可能不是解决底层问题的最好方法。 给user2只访问实际需要共享的文件(使用公共组或使用ACL)可能更合理。 考虑还给予user2权限运行程序作为user1通过sudo(运行visudo并添加行user1 ALL = (user2) ALL )。

User1必须是分配给具有rwx( 7 ,无论是否为用户和其他权限,但为组权限列出的组)的组的成员。

这有帮助吗?