C/C++教程

setfacl

本文主要是介绍setfacl,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

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

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

 

setfacl 可设置ACL权限 getfacl 可查看设置的ACL权限   举例,创建三个用户 user1 user2 user3 创建一个wen夹 test   :mkdir /data/test chown user1:user1 /data/test   #属主、属组为user1

[root@node02 data]# getfacl /data/test    #查看test 目录的ACL权限
getfacl: Removing leading '/' from absolute path names
# file: data/test
# owner: user1
# group: user1
user::rwx
group::r-x
other::r-x

在目录属主、属组不变的情况下,user2对文件有读写权限

[root@node02 data]# getfacl /data/test
getfacl: Removing leading '/' from absolute path names
# file: data/test
# owner: user1
# group: user1
user::rwx
group::r-x
other::r-x

[root@node02 data]# setfacl -m u:user2:rw /data/test
[root@node02 data]# getfacl /data/test
getfacl: Removing leading '/' from absolute path names
# file: data/test
# owner: user1
# group: user1
user::rwx
user:user2:rw-
group::r-x
mask::rwx
other::r-x

[root@node02 data]#

 

设置组的话只需要把setfacl -m u::rwx 中的u改为g即可,大致差不多。

设置mask的话,setfacl -m u::rwx 中的u改为m,并且这个可不针对用户和组哦,其他的大致差不多。

在使用-R时,记得放在-m前面,否则不可以地

使用-d的话,就会把默认的都加上去,针对目录哦。

这篇关于setfacl的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!