![如何将用户添加到文件夹权限?](https://linux22.com/image/1334360/%E5%A6%82%E4%BD%95%E5%B0%86%E7%94%A8%E6%88%B7%E6%B7%BB%E5%8A%A0%E5%88%B0%E6%96%87%E4%BB%B6%E5%A4%B9%E6%9D%83%E9%99%90%EF%BC%9F.png)
可能重复:
允许特定用户读取/写入我的文件夹
我有一个文件夹,/home/oliver
它是我的用户的主目录oliver
。我将设置一个文件服务器,并希望用户apache
能够从此文件夹读取内容。
目前apache
用户根本看不到该文件夹。
执行此操作的命令是什么?我是 Linux 新手,因此不了解组等概念。
答案1
您有一个组 oliver,它是您主文件夹的当前组。您需要将 apache 添加到此组。usermod -a -G oliver apache
以 root 身份(可能使用sudo
)将 apache 用户添加到组 oliver。您需要重新启动 apache(或您的机器)以应用更改。
此后,您可以使用组权限控制权限。通常默认情况下不会向其他组成员授予写访问权限,因此您可能需要运行chmod -R g+w /home/oliver
。这会以递归方式 (-R) 为组 (g) 的其他成员添加写权限 (+w)。您拥有该文件夹,因此您不需要 sudo。
请记住,apache 可能不会在用户名 apache 下运行。它可能是www
、www-data
或 之类的东西webuser
。检查top
/ps
以查看它以什么身份运行,或者运行cat /etc/passwd
并查看哪个用户看起来像 apache 使用它。更具体的说明将需要您正在运行的发行版和版本。
答案2
如果您启用了 ACL,那么一种快捷方式就是为 Apache 设置 ACL,如下所示:
setfacl -m u:apache:r /home/oliver
欲了解更多详情man setfacl
和man getfacl
。