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,cli

如何用date命令,显示昨天的日期

在MacOS或Linux上命令是不同的,但是可以达到相同的效果。 我们来看看如何用date命令显示昨天的日期。

linux

rsync回传的错误码

这里列出所有的rsync错误码,因此在调度中,我们可以了解失败的原因。

linux

rsync如何自动允许ssh密钥指纹

当我们第一次使用ssh进行主机连线时,会显示一个主机密钥的指纹确认。 有时进行一些自动化的调度使用rsync,或许远程主机变更了,需要自动允许, 如何让ssh自动允许指纹进行连线,不需使用交互模式手动去压yes呢?