setfacl命令来自英文词组set file access control list的缩写,其功能是设置文件ACL策略规则。FACL即文件访问控制列表策略,通过该技术可以更加精准地控制权限的分配,例如仅允许某个用户访问指定目录,或仅有某个用户才具有写入权限。把权限约束在一个极小的范围内,系统也就更加安全了。

语法格式:setfacl 参数 文件或目录名

常用参数:

-b清空扩展访问控制列表策略 -P找到符号链接对应的文件
-d应用到默认访问控制列表-R递归处理所有子文件
-k移除默认访问控制列表-x根据文件中的访问控制列表移除指定策略
-L跟踪符号链接文件--help显示帮助信息
-m更改文件访问控制列表策略--vesion显示版本信息

参考示例

对目录进行FACL策略规则设置,允许指定用户进行读、写、执行操作:

[root@linuxcool ~]# setfacl -Rm u:linuxcool:rwx File 
[root@linuxcool ~]# getfacl File 
 file: File 
 owner: root group: root 
 user::rwx 
 user:linuxcool:rw- 
 group::r-x 
 mask::rwx 
 other::r-x 

清除指定目录上已有的FACL策略规则:

[root@linuxcool ~]# setfacl -x u:linuxcool File 
[root@linuxcool ~]# getfacl File 
 file: File 
 owner: root 
 group: root 
 user::rwx 
 group::r-x 
 other::r-x
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。