Linux下ACL权限使用

来源:互联网 发布:眼前的苟且知乎 编辑:程序博客网 时间:2024/06/06 06:30

场景:
公司新人来一个服务端开发人员,公司有要求,新人员7天考核期,新人员要下载linux上资源
新人员不能放在服务端开发组里面,否则具备写的权限, 不能放在其他组里面,没有读权限,
那么怎么解决,把新的人员赋予ACL权限

ACL权限
ACL 权限必须要分区支持,linux挂载分区 默认都开启了ACL权限
类似于windows没有组的概念,直接给用户赋予权限

mkdir /project/: root用户创建文件夹,资源文件夹
useradd xiaoming: 创建用户,服务端开发人员
passwd xiaoming: 改密码
groupadd student: 创建组
gpasswd -a xiaoming tgroup: 把xiaoming 加入到 tgroup组,服务端组

chown root:tgroup /project/ :所属组改成tgroup
chown 770 /project/
useradd shiting: 新人开发人员
setfacl -m u:shiting:rx /project/: 给试听用户shiting赋予rx权限, u:用户:权限 -m:添加acl权限

查看:
getfacl /project/: 查看acl权限
这里写图片描述

1. 问题一:
通过上面设置,新人对/project目录有权限, 但是对于里面文件没有,使用递归方式设置:
递归:
setfacl -m u:shiting:rx -R /project/:
这里写图片描述

2.问题二
在/project中对于新加入的文件和文件夹shiting用户还是没有ACL权限,
解决方法:
默认ACL权限:新添加的文件也会增加ACL权限:

setfacl -m d:u:shiting:rx -R /project

3.问题三
如果在递归权限和默认ACL权限之间创建文件,也没有ACL权限,还要手动设置一下

  • setfacl -m g:shiting:rx /project/: 给试听用户shiting赋予rx权限, g:组设置 :权限 -m:添加acl权限
原创粉丝点击