Linux学习 第5课
基本权限ACL
ACL基本用法
getfacl命令
getfacl命令查看ACL权限,与ll命令查看的内容相差无几
getfacl /home/test.txt
如下演示:查看home目录下的test.txt文件

setfacl命令
setfacl命令用来设置ACL权限,对每一个文件目录进行更加精细的权限的设置
参数:
1.-m 可以修改当前文件的ACL权限
2.-x 可以删除用户对文件的所有权限
3.-b 可以删除所有扩展ACL权限,回到UGO的基本权限
setfacl -m u:longcan20218521:rw /home/test.txt
setfacl -x u:longcan20218521 /home/test.txt
setfacl -b /home/test.txt
如下演示:
- 给予longcan20218521用户对于home目录下的test.txt文件的rw权限,再使用ll命令查看
![]()
- 使用getfacl命令查看用户longcan20218521的权限
![]()
- 为组hr增加“rw”权限,并查看该文件的详细权限
![]()
- 添加“-x”参数可以删除用户对文件的所有权限。可以使用longcan20218521用户查看文件内容
![]()
![]()
- 使用-b参数删除/home/test.txt文件的所有扩展ACL权限
![]()
ACL高级特性
最大有效权限mask
mask用来指定最大有效权限。系统给用户赋予的ACL权限需要和mask的权限逻辑“相与”,“相与”之后的权限才是用户的真正权限。
如下演示:

- 将mask权限设置为“r”。用户权限与其“相与”之后,有效的权限为r--,用户真正的权限就是“r--”。使用longcan20218521用户后,发现没有执行权限。
- 解释:r为4对应二进制1000。r--为4对应二进制为1000。“相与”后为1000,即4.因此真正权限为r--。
![]()
- 将mask的权限设置为“rw”,longcan20218521的权限设置为“rx”,相与后为“r--”。
- 解释:rw对应为6,二进制为0110.rx对应为5,二进制为0101.相与后为0100,即4,即“r--”。
![]()
- 为方便文件管理,将other的权限设置为空
![]()
mask的作用与特性
mask能够临时降低用户或组的权限。
default:继承
演示如下:
- 创建dir01目录,给longcan20218521用户添加“rwx”权限,然后在dir01目录下创建dir02目录,切换到longcan20218521发现没有权限创建新文件
![]()
- 使用default命令继承上一个目录的权限,先用getfacl命令查看dir01的ACL权限。
![]()













浙公网安备 33010602011771号