您的位置:首页 > 运维架构 > Linux

Linux常用命令(30)之特殊权限管理ACL

2017-04-14 10:56 483 查看

ACL权限

ACL权限是解决Linux对用户分配权限不足的情况


查看分区ACL权限是否开启

dumpe2fs -h /dev/sda5
说明:dumpe2fs命令是查询指定分区详细文件系统信息的命令
选项: -h    仅显示超级块中信息,而不显示磁盘块组的详细信息


临时开启分区ACL权限

mount -o remount,acl /
重新挂载根分区,并挂载加入acl权限


永久开启分区ACL权限

a.vi /etc/fstab
UUID = 4209762f-820f-48a2-908d-efe398869f1b / ext4 default,acl 1 1
b.mount -o remount /
默认defaults已开启acl权限


查看预设定ACL权限

查看ACL命令

getfacl 文件名
说明:查看acl权限


设定ACL权限的命令

setfacl [选项] 文件
选项: -m     设定acl权限
-d     设定默认的acl权限
-x     删除指定的acl权限
-k     删除默认的acl权限
-b     删除所有的acl权限
-R     递归设定acl权限


给用户赋予acl权限,使用“u:用户名:权限”格式
setfacl -m u:用户名:权限  文件名(目录)


例如:给用户st赋予r-x权限

[root@localhost ~]# setfacl -m u:st:rx /a.sh


给用户组赋予acl权限,使用“g:用户组名:权限”格式
setfacl -m g:组名:权限  文件名(目录)


例如:给用户组group1赋予r-x权限

[root@localhost ~]# setfacl -m g:group1:rx /a.sh


最大有限权限

mask是用来指定最大有效权限的。如果给用户赋予acl权限,是需要和mask权限“相比”才能得到用户的真正权限


修改最大有效权限

setfacl -m m:rx 文件名
说明:设定mask权限为r-x,使用“m:权限”格式


删除ACL权限

setfacl -x u:用户名 文件名
说明:删除指定用户的acl权限
setfacl -x g:组名 文件名
说明:删除指定用户组的acl权限
setfacl -b 文件名
说明:删除文件的所有的acl权限


默认ACL权限和递归权限

递归ACL权限

递归是父目录在设定acl权限时,所有子文件和子目录也会拥有相同的acl权限
setfacl -m u:用户名:权限 -R 文件名


递归设定acl权限时,容易造成权限溢出,即对目录下的所有文件赋予过高的权限,尽量少用acl

默认ACL权限

默认acl权限的作用是如果给父目录设定了默认的acl权限,那么父目录中所有的新建的子文件都会继承父目录的acl权限。
setfacl -m d:u:用户名:权限 文件名
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux