【问题标题】:Shared directory in linux serverlinux服务器中的共享目录
【发布时间】:2014-03-22 12:11:53
【问题描述】:

我们有一个 vps 服务器。我们希望在所有用户帐户之间共享一些文件。现在用户无法访问该文件,除非他是该文件的所有者。我们如何创建一个共享目录,以便每个用户都可以访问其中的文件,即使他们不是该文件的所有者。

eg:- 用户目录

/home/user1/public_html
/home/user2/public_html

【问题讨论】:

    标签: php linux apache file-permissions


    【解决方案1】:

    为应该能够访问共享目录的用户创建一个新组。然后使用 chown 将目录的组成员身份设置为该组。现在,无论组权限设置如何,都将应用于该组的成员。将所需的用户添加到组中,您将拥有一个由目录所有者管理的共享目录。

    如果您需要每个人都可以读写存储库,那么 chmod g+s 文件夹使其成为 setgid。这将强制在其下创建的所有文件和子目录与共享文件夹属于同一组。现在用户可以将文件添加到目录中,该组的其他成员将能够根据他们的组权限访问它们,而添加它们的人将能够根据他们的用户权限访问它们。

    请参阅 man chown 和 man chmod 了解如何设置用户/组所有权和用户/组对文件的权限。

    【讨论】:

      【解决方案2】:

      关于 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
      

      将组更改为“您的组名”

      【讨论】:

        猜你喜欢
        • 2021-12-26
        • 1970-01-01
        • 1970-01-01
        • 2012-07-17
        • 2011-01-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多