Linux命令之ACL权限

生活随笔 2015-01-07

ACL是Access Control List的缩写,主要的目的是在提供传统的owner,group,others的read,write,execute权限之外的局部权限设定。ACL可以针对单个用户,单个文件或目录来进行r,w,x的权限设定,特别适用于需要特殊权限的使用情况。简单地来说,ACL就是可以设置特定用户或用户组对于一个文件/目录的操作权限。

首先要查看系统是否支持ACL,具体的操作步骤如图:

Linux命令之ACL权限

有图可以看出是支持ACL的。要是不支持可以通过命令mount -o remount,acl /dev/sda1来重新挂载。

1.setfacl设置文件权限

setfacl参数如下:

-m :设置后续的acl参数

-x :删除后续的acl参数

-b :删除所有的ACL设定参数

-R :递归设置acl参数

-d :设置预设的acl参数(只对目录有效,在该目录新建的文件也会使用此ACL默认值)

-k :删除预设的ACL参数

eg:setfacl -m u:user1:rw my.cnf-sample.txt

2.getfacl查看文件权限

eg:getfacl my.cnf-sample.txt

3.删除文件权限

eg:setfacl -x u:user1  my.cnf-sample.txt

4.清空文件权限

eg:setfacl -b my.cnf-sample.txt

上边都是针对单个文件的,同理也可以针对文件夹来进行设置。如果要在某个文件夹下新增的文件(夹)继承属性的话可以用如下的命令:setfacl -m d:u:user1:rw -R my.cnf-sample.txt来实现。

相关推荐