码迷,mamicode.com
首页 > 其他好文 > 详细

setfacl命令基本用法

时间:2018-02-06 21:42:22      阅读:504      评论:0      收藏:0      [点我收藏+]

标签:sage   int   effective   建立   帮助   基本用法   验证   范围   用户访问   

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                            //文件权限后面的“+”没了


setfacl命令基本用法

标签:sage   int   effective   建立   帮助   基本用法   验证   范围   用户访问   

原文地址:http://blog.51cto.com/qingmiao/2069603

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!