setfacl使用背景
两个用户,tom和jerry,tom创建的文件只能tom自己修改,如果给other写入权限,就不止jerry一个人能修改这个文件了。
现在tom想他创建的文件只有tom和jerry能修改。
所以就需要facl
注:如果对于文件夹操作,那么进入文件夹,列出文件等操作都是需要x(执行权限)
FACL:Filesystem Acess Control List
Linux(和其他Unix等POSIX兼容的操作系统)有一种被称为访问控制列表(ACL)的权限控制方法,它是一种权限分配之外的普遍范式。例 如,默认情况下你需要确认3个权限组:owner、group和other。而使用ACL,利用文件扩展属性保存额外的访问控制权限,你可以增加权限给其他用户或组别,而不单只是简单 的"other"或者是拥有者不存在的组别。可以允许指定的用户A、B、C拥有写权限而不再是让他们整个组拥有写权限。
基础ACL通过两条命令管理:setfacl用于增加或者修改ACL,getfacl用于显示分配完的ACL。
getfacl
如何设置acl
设置:setfacl [选项] 权限 文件名
setfacl的选项:
-m 修改或添加acl权限
-x 删除指定的acl权限
-b 删除所有的acl权限
-k 删除默认的acl权限
-d 设置默认的acl权限,通常用于目录,后期在目录中创建的新文件将采用这个acl权限值
-R 递归设置目录及其子目录中的文件的acl权限
setfacl -m g:manage:rwx manage/ 其中-m是添加acl权限,g:manage:rwx 第一个g是group表示对组设置权限,第二个manage是具体的组,第三个是权限,当要对文件夹操作最好加上x(执行权限)
setfacl -m u:lt:rwx manage/ 和组的设置差不太多,只是这个是对user设置