linux setfacl 使用

安装 acl

ubuntu
apt -y install acl

setfacl 2.2.52 -- 设定文件访问控制列表

用法: setfacl [-bkndRLP] { -m|-M|-x|-X ... } file ...
参数 参数 描述
-m --modify=acl 更改文件的访问控制列表
-M --modify-file=file 从文件读取访问控制列表条目更改
-x --remove=acl 根据文件中访问控制列表移除条目
-X --remove-file=file 从文件读取访问控制列表条目并删除
-b --remove-all 删除所有扩展访问控制列表条目
-k --remove-default 移除默认访问控制列表
--set=acl 设定替换当前的文件访问控制列表
--set-file=file 从文件中读取访问控制列表条目设定
--mask 重新计算有效权限掩码
-n --no-mask 不重新计算有效权限掩码
-d --default 应用到默认访问控制列表的操作
-R --recursive 递归操作子目录
-L --logical 依照系统逻辑,跟随符号链接
-P --physical 依照自然逻辑,不跟随符号链接
--restore=file 恢复访问控制列表,和“getfacl -R”作用相反
--test 测试模式,并不真正修改访问控制列表属性
-v --version 显示版本并退出
-h --help 显示本帮助信息
同时设置用户和组
setfacl -Rm u:user:rwx,g:user:rwx /path/to
设置用户权限
setfacl -d –set u:username:rwx  dirname
获取文件/目录权限
getfacl dirname
子目录继承父目录权限
setfacl -R -m u:username:rwx dirname
删除目录单个用户的权限
setfacl -x u:username  dirname
删除目录全部用户权限
setfacl -b dirname