ACL:访问控制列表
FACL:文件系统访问控制列表

概述:访问控制列表,当文件或目录的权限不能在完全满足访问控制的实现时,即可使用文件系统访问控制列表进行设置访问权限。
分类:
1.对用户进行访问控制设置
2.对组进行访问控制设置
实现:
在一个文件系统挂载时,默认文件系统的ACL功能是不被支持,只有那些在系统安装时生成的那些文件系统才自动支持ACL功能。所以在进行ACL的设置时要对文件系统的ACL功能进行启用。权限的生效次序:属主-->用户ACL-->属组-->组ACL-->其他
【1】启用文件系统的ACL功能
法1.修改文件系统的默认挂载选项
在/etc/fstab中对应的文件系统的默认挂载选项default后面加上",acl"并对其进行重新挂载
#mount -o remount /mydata
也可以使用命令
#mount -o remount,acl /mydata
法2.修改文件系统的默认支持选项
#tune2fs -o acl /dev/sda5

【2】设置文件系统的访问控制列表:setfacl
格式:    setfacl -m u:USERNAME:MODE FILE
           setfacl -m g:GROUPNAME:MODE FILE
           setfacl -x u:USERNAME FILE
           setfacl -x g:GROUPNAME FILE


参数:    -m:设定ACL
          -x:取消ACL


#setfacl -m u:redhat:rw- /tmp/test 
               #####为/tmp/test文件设定文件访问控制列表是redhat用户权限为读写
#setfacl -x u:redhat /tmp/test                    #####取消用户redhat对文件/tmp/test的访问控制列表

【3】扩展
为某个目录设定默认的ACL使其目录内新创建的任何文件或目录继承此ACL
#setfacl -m d:u:centos:rwx /tmp/centos/

如果不设定默认也想达到此种效果
#setfacl -R -m u:centos:rwx test/

注:这样设定的话,若干创建文件,则其执行权限也会继承,因此该项会很危险,所以一般都用设置其默认,在使用tar进行归档具有ACL的文件时,tar默认不会保存文件的ACL,如果要保存ACL的信息则需要在tar后面加上"--acls"选项。