【Linux】Linux权限管理——ACL权限
一、ACL权限简介与开启
1.1 ACL权限简介
读、写、执行权限是用户操作文件、目录的权限。ACL权限也是用户对文件是否有读、写、执行的权限。目录或文件的所有者、所属组、其他人的权限都已经设定,但是如果想要让新用户对文件、目录有不同的权限(不同于所有者、所属组、其他人的权限),为了满足这种特殊的需求,需要对用户单独设置ACL权限。是否支持ACL权限,不是文件支持也不是用户支持,而是文件所在的分区是否支持ACL权限。
1.2 查看分区ACL权限是否开启dumpe2fs
语法:dumpe2fs【-h】分区
选项:
-h:仅显示超级块中的信息,而不显示磁盘块组的详细信息。
dumpe2fs命令:查询指定分区详细文件系统的命令。
1.3 开启分区ACL权限
当前Linux各个分区默认都开启了ACL权限。其实不用开启。
1.3.1 临时开启分区ACL权限mount
语法:mount【-o】remount,acl 分区
选项:
-o:支持特殊挂载的选项。
功能:重新挂载分区,并挂载加入acl权限。
1.3.2 永久开启分区ACL权限
步骤:
(1)修改配置文件 vi /etc/fstab 保存
(2)重新挂载文件系统或者重启系统,使修改生效
二、查看、设定ACL权限
2.1 设定ACL权限setfacl -m
语法1:setfacle -m u:用户名:权限 文件或目录
语法2:setfacle -m g:组名:权限 文件或目录
选项:
-m:设定ACL权限。
2.2 查看ACL权限getfacl
语法:getfacl 文件名
作用:
查看文件或目录是否有ACL权限。
三、最大有效权限、删除ACL权限
3.1 最大有效权限
语法:setfacl -m 文件或目录
作用:修改最大有效权限
3.2 删除ACL权限
3.2.1 删除指定ACL权限setfacle -x
语法1:setfacle -x u:用户名 文件或目录
语法2:setfacle -x g:组名 文件或目录
选项:
-x:删除指定的ACL权限。
3.2.1 删除文件或目录所有ACL权限setfacle -b
语法:setfacle -b 文件或目录
选项:
-b:删除文件或目录的所有ACL权限
四、默认ACL权限、递归ACL权限
2.1 目录递归ACL权限setfacl -R
递归ACL权限的作用是父目录设定了递归ACL权限,那么父目录中已有的子文件会继承父目录的ACL权限。
语法1:setfacl -m u:用户名:权限 -R 目录
语法2:setfacl -m g:组名:权限 -R 文件或目录
选项:
-m:设定ACL权限。
-R:递归设定ACL权限。父目录设定了acl权限,子目录也拥有acl权限
2.2 默认目录ACL权限setfacl d:
默认ACL权限的作用是如果父目录设定了默认ACL权限,那么父目录中新建的子文件都会继承父目录的ACL权限。弥补了递归设定ACL权限不能应用新建子文件的缺点。
语法:setfacl -m d:u:用户名:权限 目录
选项:
-m:设定ACL权限。
d::代表默认