ACL的主要目的是提供传统的用户、组、其他,三个身份除读写执行权限之外的权限设置.
可以针对单一的用户,也可以对单一的文件或目录来进行rwx权限的设置
相关命令
getfacl
获取某文件/目录的ACL设置
setfacl
设置某个文件/目录的ACL
参数
setfacl [参数] 文件名
参数 | 作用 |
---|---|
-m | 设置后续的acl参数给文件使用,不可与-x合用 |
-x | 删除后续的acl参数 |
-b | 删除所有的acl设置参数 |
-k | 删除默认的acl参数 |
-R | 递归设置acl,即子目录也会被设置acl |
-d | 设置默认acl参数,只对目录有效 |
简单测试
针对用户设置acl
1.创建一个文件test
2.设置acl
规则 setfacl u:(用户名,若不填,则默认为该文件所有者):[rwx]
这里发现最后一位多了个+说明设置成功
3.具体查看acl
[root@web acl]# getfacl test
# file: test #标注文件名
# owner: root # 文件所有者
# group: root # 文件所属组
user::rw- #代表所有者的权限
user:alice:r-x #代表所设置给alice的权限,发现与属主并不相同
group::r-- #属组权限
mask::r-x #此文件默认的有效权限
other::r-- 其他人拥有的权限
4.删除acl设置
setfacl -b 文件名
发现确实删除成功
针对组设置acl
1.创建一个文件test01
2.针对组acl_grp设置acl,添加权限rx
setfacl -m g:acl_grp:rx test01
发现下面确实多了acl_grp用户组的权限r-x