by Devin Yang

建立于: 5年前 ( 更新: 5年前 )

我想现在的Linux大多支持Access Control List (ACL)。在文件系统ACL激活的情况下,
我们可以设置额外的权限给不同的使用者或群组。
这让我们更加自由的来设置不同使用者的文件系统权限。

直接来看命令。
下方的u代表了设置share数据夹,给test的使用者有rwx权限。
setfacl -m u:test:rwx share/
换成g,则代表了,设置test的群组对share/数据夹有rwx权限。
setfacl -m g:test:rwx share/
如果要设置目录下也含子目录的所有文件,参数是-R。(递归)
合起来输入就是-Rm。

问题来了,如果这么设置,全部的文件都变成有运行的权限。所以如何设置
文件是没有x的权限,只有目录才有x的运行权限(进入目录的权限)。
非常简单,我们可以用大写的X搞定。
例如:
setfacl -Rm u:git:rwX /var/www
这样就会有漂漂的颜色,而不是一片惨绿了。

另外提一下,我们用getfacl取得额外的文件信息。
例如:我用root设置了git使用者,如下权限。
setfacl -Rm u:git:rwX humanity-1.10.4/
使用git使用者查看

在上图中,大家是否有注意到了,-rw-rw-r--+。在ls -l时,多了一个+
非常显而易见,就代表了,这个文件,有额外的ACL权限设置罗。

现在用getfacl images来看看images目录的使用者(user)权限,是有运行权限的。

如果您喜欢这篇文章,请给我个Like吧? 

 

Tags: linux

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


linux

如何在RHEL 7/CentOS7/Fedora变更timezone

在新版的RHEL 7/CentOS 7或Fedora上,我们可以透过timedatectl来查看状态及进行调整。

linux

ubuntu找不到add-apt-repository命令

ubuntu找不到add-apt-repository命令

linux,system

检测系统中的selinux是否激活

检测系统中的selinux是否激活