setfacl命令基本用法-阿里云开发者社区

开发者社区> 科技小能手> 正文

setfacl命令基本用法

简介:
+关注继续查看
setfacl命令可以用来细分linux下的文件权限。
chmod命令可以把文件权限分为u,g,o三个组,而setfacl可以对每一个文件或目录设置更精确的文件权限。
换句话说,setfacl可以更精确的控制权限的分配。
比如:让某一个用户对某一个文件具有某种权限。

这种独立于传统的u,g,o的rwx权限之外的具体权限设置叫ACL(Access Control List)
ACL可以针对单一用户、单一文件或目录来进行r,w,x的权限控制,对于需要特殊权限的使用状况有一定帮助。
如,某一个文件,不让单一的某个用户访问。


 setfacl 参数
Usage: setfacl [-bkndRLP] { -m|-M|-x|-X ... } file ...
  -m, --modify=acl        modify the current ACL(s) of file(s)
  -M, --modify-file=file  read ACL entries to modify from file
  -x, --remove=acl        remove entries from the ACL(s) of file(s)
  -X, --remove-file=file  read ACL entries to remove from file
  -b, --remove-all        remove all extended ACL entries
  -k, --remove-default    remove the default ACL
      --set=acl           set the ACL of file(s), replacing the current ACL
      --set-file=file     read ACL entries to set from file
      --mask              do recalculate the effective rights mask
  -n, --no-mask           don't recalculate the effective rights mask
  -d, --default           operations apply to the default ACL
  -R, --recursive         recurse into subdirectories
  -L, --logical           logical walk, follow symbolic links
  -P, --physical          physical walk, do not follow symbolic links
      --restore=file      restore ACLs (inverse of `getfacl -R')
      --test              test mode (ACLs are not modified)
  -v, --version           print version and exit
  -h, --help              this help text

例子:在/test 下建立一个test文件   将权限改为777  并查看其ACL设置
[root@localhost ~]# cd /test/
[root@localhost test]# touch test.txt
[root@localhost test]# echo 123  > test.txt 
[root@localhost test]# cat test.txt 
123
[root@localhost test]# chmod 777 test.txt 
[root@localhost test]# ll
总用量 0
-rwxrwxrwx. 1 root root 0 2月   6 20:40 test.txt
[root@localhost test]# getfacl test.txt 
# file: test.txt                          //文件名
# owner: root                            //文件所属者
# group: root                             //文件所属组
user::rwx                                    //文件所属者权限
group::rwx                                 //同组用户权限
other::rwx                                  /其它者权限

现在我们让handsome用户只有读取的权限

[root@localhost test]# setfacl -m u:handsome:r test.txt 
[root@localhost test]# ll
总用量 4
-rwxrwxrwx+ 1 root root 0 2月   6 20:40 test.txt        //权限的最后多了一个“+”
[root@localhost test]# getfacl test.txt 
# file: test.txt
# owner: root
# group: root
user::rwx
user:handsome:r--                                    //handsome的权限为r
group::rwx
mask::rwx
other::rwx

通过handsome用户验证一下:
[root@localhost test]# su - handsome 
[handsome@localhost ~]$ cat /test/test.txt 
123
[handsome@localhost ~]$ echo 456 >> /test/test.txt 
-bash: /test/test.txt: 权限不够


除了对某个文件的单个用户进行权限设置外,还可以对某个组进行同样的设置:g:[用户组]:[rwx]

还能对有效权限(mask)进行设置:有效权限(mask) 即用户或组所设置的权限必须要存在于mask的权限设置范围内才会生效
              

最后取消ACL权限:
[root@localhost test]# setfacl -x u:handsome test.txt 
[root@localhost test]# ll
总用量 8
-rwxrwxrwx+ 1 root root 4 2月   6 20:47 test.txt

删除所有acl
[root@localhost test]# setfacl -b test.txt 
[root@localhost test]# ll
总用量 4
-rwxrwxrwx. 1 root root 4 2月   6 20:47 test.txt                            //文件权限后面的“+”没了


本文转自 青苗飞扬 51CTO博客,原文链接:http://blog.51cto.com/qingmiao/2069603

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
算法学习之路|用C++刷算法会用到的STL(二)——set
用C++刷算法会用到的STL(二)——set
2374 0
jsp ResultSet用法(引)
1,如何获得ResultSet的结构 ResultSetMetaData rsmd=rs.getMetaData();cn=rsmd.getColumnCount();for(int ik=1;ik
586 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
4480 0
Windows系统命令行net user命令用法
原文:Windows系统命令行net user命令用法 在Windows渗透测试过程中,最常用的要数net user 命令了,但是非常多的时候我们都是对Linux命令非常熟悉,对Windows命令非常熟悉或者了解用法的少只有少,为了以后工作方便,这里记录一下Windows系统中的 net user 命令的用法。
1169 0
14426
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载