一、前因
每个文件或者目录 只有一个用户 和一个组
(1)以 用户 root ,组 root 为例,操作目录(目录和文件都适用)
权限分为:管理员--普通用户( 属于root组的用户) --其他用户(不属于root的用户)
对(1)进行解释:
①管理员root 新建 w3目录 ,且 其他用户有 r x 权限
切换到 st 用户 ,可以进入 w3
② 改变 权限,其他用户权限 0 ,
st 无法进入 w3
③ 改变 组
st 属于 g1 组。 st可以视为普通用户,有权限访问 w3
usert1不属于 g1组,没有权限访问 w3
二、acl
如果 管理员--普通用户( 属于root组的用户) --其他用户(不属于root的用户) 都不满足用户的权限,只能通过acl设置只属于自己的权限。
(1)setfacl 设置权限 ,getfacl 查看设置
setfacl -m u:用户名:权限 目录(或者文件)
getfacl 目录(或文件)
① 单独给u3 用户设置 r权限
测试给u3设置 r x 权限, 可以进入w3 目录
② 可以给不同用户设置同一个目录的权限
③递归 -R
setfacl -m u:用户名:权限 -R 目录 【只对已经存在的目录或文件生效】
setfacl -m d:u:用户名:权限 -R 目录 【新的和已有的目录或文件生效】
④ mask 最大权限
修改 mack setfacl -m m:权限 目录
最终权限是 mack 和user 做 ‘与’’
x+x=x; x+ - = - ; - + - = -
(3)移除setfacl 设置
①删除单个用户权限
②删除所有
setfacl -b 目录(或文件)