acl控制列表作用:
——–举例:类似ftp例子,老师(teacher)创建了个目录ftp用于学生上交作业,老师可以有增、删、改、查权限,班级里的学生为(class1)组成员,学生只能有上传文件,不能修改和删除和查看,这个普通 u g o 权限就能办到,但是老师想找班长(banzhang)帮他改作业(增、删、改、查),且只能用班长自己的身份去操作里面的文件,肯定有人会说改掉这个目录所有者为banzhang就可以了,下次老师要自己看作业又得改回来所有者为teacher,这样就很麻烦,有没有什么办法可以让文件所有者同时有多个呢?可以,acl控制列表可以帮你,上面就是acl的作用,当然还可以设置所属组同时有多个。
用户相关目录和文件
#如果要彻底删除用户必须对这些文件和目录修改
/etc/passwd /etc/shadow /home/zhang3 /var/spool/mail
groupadd teachers #创建teachers组
groupadd class1 #创建class1组
useradd -g teachers teacher1 #将用户teacher1加入teachers组
useradd -g class1 u1 #将用户u1加入class1组
useradd -g class1 u2 #同上
useradd -g class1 u3
useradd -g class1 zhang3
setfacl 设置acl 权限
-m #设置一个ACL权限
setfacl -m u:zhang3:rwx /data/ftp1 #增加班长为所有者
-x #取消一个ACL权限
setfacl -x g:class1 /data/ftp1
setfacl -x u:zhang3 /data/ftp1
-b #清除所有的 ACL 权限
取消所有的acl权限:setfacl -b ftp 1
getfacl 查询acl权限
#查询/data/ftp1目录的acl权限
getfacl /data/ftp1
# file: dir1 #目录名
# owner: root #所属用户
# group: root #所属组
user::rwx #所属用户的权限
user:zhang3:rwx #effective:r-x 《---- 被umask 作用到,削减 w 权限
user:new1:r-x #二级所属用户权限
user:new2:--x #二级所属用户权限
group::r-x #所属组权限
mask::r-x # 除root外其他用户最高权限
other::--- #其他用户权限
ACL 中mask值的作用:
可以临时的将整个ACL列表中用户的权限,限制在 Umask的权限 之下。
*** 设置mask的方法 setfacl -m m:rwx ftp1
@@@@@@
比 mask 大的权限会被削减,比mask小的, mask值 不作用。
除了 “root 用户” 权限之外,其他的 acl 用户和组(包括默认组),都会被mask 作用到
@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
mask 值,占用了 原先 文件属性中, group 的位置,
设置了acl的目录或者文件,它的 group 组权限的位置,会显示为acl的mask值。
如果看到权限位后 +号,那么想知道真实的所属组权限的话 只能用 getfacl 命令查看比较准确
getfacl /data1/class1
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
来源:CSDN
作者:小布丁吃西瓜
链接:https://blog.csdn.net/qq_38228830/article/details/81453325