【发布时间】:2014-03-22 12:11:53
【问题描述】:
我们有一个 vps 服务器。我们希望在所有用户帐户之间共享一些文件。现在用户无法访问该文件,除非他是该文件的所有者。我们如何创建一个共享目录,以便每个用户都可以访问其中的文件,即使他们不是该文件的所有者。
eg:- 用户目录
/home/user1/public_html
/home/user2/public_html
【问题讨论】:
标签: php linux apache file-permissions
我们有一个 vps 服务器。我们希望在所有用户帐户之间共享一些文件。现在用户无法访问该文件,除非他是该文件的所有者。我们如何创建一个共享目录,以便每个用户都可以访问其中的文件,即使他们不是该文件的所有者。
eg:- 用户目录
/home/user1/public_html
/home/user2/public_html
【问题讨论】:
标签: php linux apache file-permissions
为应该能够访问共享目录的用户创建一个新组。然后使用 chown 将目录的组成员身份设置为该组。现在,无论组权限设置如何,都将应用于该组的成员。将所需的用户添加到组中,您将拥有一个由目录所有者管理的共享目录。
如果您需要每个人都可以读写存储库,那么 chmod g+s 文件夹使其成为 setgid。这将强制在其下创建的所有文件和子目录与共享文件夹属于同一组。现在用户可以将文件添加到目录中,该组的其他成员将能够根据他们的组权限访问它们,而添加它们的人将能够根据他们的用户权限访问它们。
请参阅 man chown 和 man chmod 了解如何设置用户/组所有权和用户/组对文件的权限。
【讨论】:
关于 Linux 权限的一点点:
ls -lah
drwx------ 2 username groupname 4.0K Feb 17 21:34 filename
drwx----- 为您提供有关文件/文件夹权限的信息
d 表示它是一个文件夹,然后是用户、组和其他 3 个字符
d{rwx} 表示在这种情况下用户“用户名”具有读写和执行权限 例如 d{rwx}{rw} 意味着组 'groupname' 将具有读/写权限。
了解这一点后,您可以创建文件夹并分配权限:
mkdir public_folder
chmod g+rw public_folder
这将改变mod组并赋予它读/写权限,您也可以使用o+rw来赋予其他人(每个人)读/写权限。但从安全角度来看,您可能希望将用户放在一个组中并授予该组权限
chgrp yourgroupname public_folder
将组更改为“您的组名”
【讨论】: