use*_*898 12 permissions files
我想让用户能够在其他用户目录中创建写入和读取文件,但不能选择在创建后删除文件(粘滞位在这里不起作用......)例如:
我有manager
目录的用户repository
我有用户worker1
需要写入文件/manager/repository
但无法删除文件
我有用户worker2
需要写入文件/manager/repository
但无法删除文件
我有用户worker3
需要写入文件/manager/repository
但不能删除文件
但worker 1-2-3
只有在创建后无法删除这些文件manager
,并root
可以删除这些文件worker 1-2-3
创建。
我试过几个chown
和chmod
技巧与应用粘着位没有成功。
与 Windows 不同,Unix/Linux 下没有明显的删除权限。删除(或创建或重命名)文件的权利绑定到包含目录。删除工作人员的写权限,/manager/repository/
以拒绝工作人员创建、删除和重命名文件。
请注意,不能允许创建文件但拒绝删除它们。
首先确保您的系统中启用了 ACL,然后运行此命令
setfacl -d -R -m user::rwx,user:worker1:---,user:worker2:---,user:worker3:--- \
/manager/repository
Run Code Online (Sandbox Code Playgroud)
这个怎么运作
此命令将为目录的所有者授予读、写和执行权限/manager/repository
。它将撤销worker1
,worker2
和 的所有权限worker3
。
这将授予其他用户读写访问权限,但将拒绝删除访问权限。
来自man setfacl
:
-d, --default
All operations apply to the Default ACL.
-R, --recursive
Apply operations to all files and directories recursively.
-m, --modify
Options to modify the ACL of a file or directory.
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
46974 次 |
最近记录: |