哈喽~ 各位运维、服务器小伙伴们,作为一个测试环境管理员, 每次遇到权限问题只知道rwx,实在是不应该哦。今天我们来说说为什么大厂都在用ACL,它到底有什么不同呢?
在这里把自己的学习内容写出来,记录一下,加深理解~!
普通 chmod/chown 只能控制:1 个所有者、1 个所属组、其他人,无法单独给第 2、3 个用户 / 组分配独立权限。
ACL 可以:
给多个不同用户单独分配 r/w/x
给多个不同用户组单独分配权限
目录设置默认 ACL,新建文件自动继承权限
适合 NAS、共享存储、DB2 多业务共用目录场景。
[root@ygdzapp4 yqdzuser]# 1s -trldrwxrwxrwx+ 8 yqdzuser yqdzuser 110 Jan8 16:44 ygdz_shared
[root@ygdzapp4 home]# cd yqdzuser/[root@ygdzapp4 yqdzuser]# 1s -trldrwxrwxrwx+ 8 yqdzuser yqdzuser 110 Jan8 16:44 yqdz_sharedrwxr-x--- yqdzuser yqdzuser64 Apr2 20:46 redis
[root@ygdzapp4 yqdzuser]# getfacl yqdz_share/ ,# file: yqdz_share/ 对象路径# owner: yqdzuser 文件属主# group: yqdzuser 文件属组user::rwx #user::空=文件所有者权限,ygdzuseruser:ftp:rwx #特定用户 ftp的ACL权限user:bes:rwx #特定用户bes的ACL权限user:escs2:rwx #特定用户escs2的ACL权限group::r-x #group::空=文件属组权限mask::rwx #所有自定义用户/组权限不能超过mask,超出部分会被截断other::rwx #其他用户#目录特有:default段(仅新建文件,子目录继承,已经存在的目录,文件无效)default:user::rwxdefault:group::r-xdefault:mask::r-xdefault:other::r
以上每行"#"后为汉字说明,非getfacl显示的内容。
root@yqdzapp4 yqdzuser]# getfacl redis 无ACL权限时,只会显示user(文件所有者),group(文件默认属组),other(其他用户)# file: redis# owner: yqdzuser#group: yqdzuseruser::rwxgroup::r-xother::---
|