linux - 如何防止用户在Linux中创建、删除、重命名目录?

标签 linux file-permissions directory-structure

我对 Linux 文件和目录权限有点迷失。我想做的是让一个用户能够创建、删除和重命名目录,而其他用户则不能这样做,但他们应该能够读取和写入目录以及遍历它们。

因此,“storage”组有权访问目录/workspace,这些用户不应该能够创建、删除或重命名目录。 “storageAdmin”组还可以访问目录/workspace,但可以创建、删除或重命名其中的目录。

每当“storageAdmin”创建一个新目录时,“storage”应该可以自动访问该目录,以便他们可以在其中读取和写入文件。

我是否正确,/workspace 需要由“storageAdmin”拥有并设置为 chmod 775 才能正常工作?

最佳答案

正确的权限是2775,也设置set gid位。这会导致新文件和目录继承父级的权限、所有者和组。

但请注意,标准 unix 权限不允许您在 chgrp 将目录访问到 storageAdmin< 后限制对 storage 组的访问。现在每个人都可以根据其他权限集进行访问。

如果您确实需要更细粒度的访问控制,请使用 Posix ACL 或 SE Linux。

关于linux - 如何防止用户在Linux中创建、删除、重命名目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/936116/

相关文章:

javascript - 如何下载包含javascript代码查找结果的网站?

python - 如何允许脚本被执行但不被读取?

python - 使用 Flask 显示特定目录中的文件内容

reactjs - React webpack 应用程序 public/images 与 src/images

linux 脚本 - 与 unix 的子字符串和追加兼容性

linux - 错误 : Undefined index: HTTP_X_FORWARDED_FOR

linux - 即使在 LINUX 上给定的缓冲区足够,套接字 UDP recvfrom 也不适用于大数据包

c++ - 如何允许其他应用程序打开我需要保持打开的文件?

php - CodeIgniter - 消息 : mkdir(): Permission denied on Ubuntu

nuget - Nuget:更改程序包目录路径和名称