您的位置:首页 > 运维架构 > Linux

linux下对普通用户设置文件访问控命令之setfacl

2015-01-10 17:10 661 查看
命令名 setfacl -设置文件访问控制列表
常用用法:
setfacl [-bkRd] [{-m|-x} acl参数] 目标文件名

命令的常用参数

-m     设置后续的acl参数给文件使用(常用)。
-x     删除后续的acl参数。
-b     删除所有的acl设置参数(常用)。
-R     递归设置acl参数


acl参数最常用的有

"u:用户:权限"
"g:组名:权限"


实例一、对于普通用户user5201351。对/etc/password不具有任何权限

[root@5201351 ~]# setfacl -m u:user5201351:--- /etc/passwd


实例二、取消/etc/passwd所有的acl参数

[root@5201351 ~]# setfacl -b /etc/passwd


当我们对一个文件设置了acl参数时,它的权限部分末就会多一个+号,此时我们看到的权限与实际权限可能会有点误差。

这时,我们可以通过getfacl命令来查看,结果如下图所示:



其中有点不好理解的是mask选项,其实它有点像【有效权限】的意思。它的意思是用户或组所设置的权限必须要存在于mask的权限

设置范围内才会生效。对于这个mask的值我们可以通过如下命令进行修改。

[root@5201351 ~]#setfacl -m m:rwx filename


一般我们可以将mask设置为rwx,然后再分别依据不同的用户/用户组去规定它们的权限。

最后提得一提的是,我们还可以使acl的权限被子目录所继承。

[root@5201351 ~]#setfacl -m d:u:user5201351:rx /opt


如果需要取消/opt目录及子目录的acl权限参数。可以使用如下命令

[root@5201351 ~]#setfacl -bR /opt
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: