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, mac, terminal, tips

再Linux或Mac的终端机如何清除目前的命令行的输入?

再Linux或Mac的终端机如何清除目前的命令行? 例如打错了一堆命令,打错了想清除从打, 千万要跟我以前一样,用倒退键慢慢杀了,我们可以用......

linux

加载.env的环境变量到系统上

加载.env的环境变量到系统上

linux,raspberry

树莓派安装VNC Server

检单介绍如何在树莓派上启动VNC Server