简介:
ACL权限是一个临时权限,让特定用户或者特定组,对某目录或文件拥有操作权限
查询ACL是否开启
df -h
dumpc2fs -h 分区
查看文件 是否带ACL权限
getfacl 目标名
ll -d 目标名
设定文件ACL权限
setfacl 选项 文件名/文件夹
-m 设定ACL权限
-x 删除指定的ACL权限
-b 删除所有ACL权限
-d 设定默认ACL权限
-k 删除默认ACL权限
-R 递归设定ACL权限
设置A递归的默认ACL权限-针对目录
命令前文件 setfacl -m u:用户:权限 -R 目标名 #命令执行后新建的文件不拥有ACL权限
命令后文件 setfacl -m d:u:用户:权限: 文件名 # 命令执行之后信件的文件也会拥有ACL权限,
删除ACL权限
setfacl -x u:用户名 文件/文件夹
setfacl -x g:组名 文件/文件夹
setfacl -b 文件/文件夹
#删除所有ACL权限
保持设置 mask 权限,是用来指定最大有效权限的保护操作,必须有同等权限 ACL设置的新权限才有效
调整mask权限
setfacl -m m:rwx 目标
临时开启分区ACL权限
mount -o remount,acl /
#重新挂在跟分区,同时加入ACL权限
永久开启分区ACL权限
vi /etc/fstab
#UUID defaults最后加入(,acl) = Default,acl
# fstab 是服务器的启动时候自动挂载的配置文件
例:将用户cps1和cps2给予访问ACLtest文件夹的临时权限
mkdir /tmp/ACLtest
useradd cps1
useradd cps2
groupadd c1
groupadd c2
gpasswd -a cps1 c1
gpasswd -a cps2 c1
cat /etc/group
chown root:c1 /tmp/ACLtest/
chmod 770 /tmp/ACLtest/
ll -d /tmp/ACLtest
setfacl -m u:cps1:rx /tmp/ACLtest/
setfacl -m u:cps2:rx /tmp/ACLtest/
setfacl -m g:c2:rx /tmp/ACLtest/
getfacl /tmp/ACLtest/