有些时候,不同用户在同一个目录下新建文件,但是其它用户无法访问。

因为这个默认创建文件的用户的umask值的原因,只有用户和本组能访问。

但是我们不能因为这样的问题修改掉用户的umask值,这样会不安全。

所有我们要使用setfacl这个命令,

 setfacl -d --set other:rw /opt/.cmdlog/

然后不关什么用户在这个目录下创建了文件,other都是拥有rw权限了。



-d是让子目录继承父目录权限

user::rw- 定义了ACL_USER_OBJ, 说明file owner拥有read and write permission

user:john:rw- 定义了ACL_USER,这样用户john就拥有了对文件的读写权限,实现了我们一开始要达到的目的

group::rw- 定义了ACL_GROUP_OBJ,说明文件的group拥有read and write permission

group:dev:r-- 定义了ACL_GROUP,使得dev组拥有了对文件的read permission

mask::rw- 定义了ACL_MASK的权限为read and write

other::r-- 定义了ACL_OTHER的权限为read