linux权限管理二——ACL权限

该文章介绍了ACL权限的开启、查看、设定、最大有效权限、删除、默认、递归。

001. ACL权限——简介与开启

      ACL的功能是应对复杂用户环境的权限问题。我们规定每个文件或目录只有所有者、所属组、其他人三种权限,如果需要再加一个特殊用户权限,需要用到ACL
      系统是否支持ACL是与文件系统有关的,在CentOS7之前的系统版本中用户自己手动创建的分区默认是不支持ACL的,而在装系统的时候已存在的分区是支持的。详情参照http://blog.51cto.com/13004186/1955577,说白了centos7开始系统默认开启ACL功能。


002.ACL权限——查看与设定

*建立用户、群组、目录测试

[root@0vo /]# mkdir /project
[root@0vo /]# useradd user1
[root@0vo /]# useradd user2
[root@0vo /]# groupadd  group1
[root@0vo /]# gpasswd -a user1 group1
正在将用户“user1”加入到“group1”组中
[root@0vo /]# gpasswd -a user2 group1

正在将用户“user2”加入到“group1”组中

*将目录赋予所有者和相应的权限

[root@0vo /]# chown root:group1 /project
[root@0vo /]# chmod 770 /project/
[root@0vo /]# ll -d /project/

drwxrwx---. 2 root group1 6 7月   5 14:41 /project/

*建立特殊权限的用户friend

[root@0vo /]# useradd friend

*单独给friend给与rx权限(其他正常用户都是rwx)

[root@0vo /]# setfacl  -m  u:friend:rx   /project(给组权限u换g)——————设定

*查看现在的/progect目录权限,发现多了一个特殊权限用户

[root@0vo /]# getfacl /project                                                   —————— 查看
# file: project/
# owner: root
# group: group1
user::rwx
user:friend:r-x
group::rwx
mask::rwx
other::---


003. ACL权限——最大有效权限与删除

设置ACL最大有效权限

*设置最大有效权限mask,作用于ACL和所属组权限,实际权限是设定权限与mask权限相与的结果
[root@0vo /]# setfacl -m  m:r /project
[root@0vo /]# getfacl /project
getfacl: Removing leading '/' from absolute path names
# file: project
# owner: root
# group: group1
user::rwx
user:friend:r-x                 #effective:r--
group::rwx                      #effective:r—
*因为最大有效权限只有r,所以上面两个实际权限也只有r
mask::r--
other::---


ACL的删除指令

setfacl  -b  文件名
删除该文件所有ACL权限
setfacl  -x  u:用户  文件名
setfacl  -x  g:组名  文件名
删除该文件相应的所属用户或组的ACL权限


004. ACL权限——默认和递归ACL


[root@0vo /]# setfacl  -m  u:friend:rx  -R  /project

-R表示递归,指的是该目录和目录下面现有文件都给与ACL权限


[root@0vo /]# setfacl  -m  d:u:friend:rx   /project
d:表示默认,指的是该目录下新建的文件默认为设定的ACL



猜你喜欢

转载自blog.csdn.net/weixin_39855998/article/details/80928318