Fork me on GitHub

Linux命令——getfacl、setfacl

简介

ACL是Access Control List的缩写,传统的Linux权限只能针对一个用户、一个群组及非此群组的其他人设置权限而已,无法针对单一用户或个人来设计权限。ACL可以对权限进行更细致的设定。一开始是unix-like操作系统的额外支持项目,近年来ACL几乎已经默认加入在所有常见的Linux文件系统的挂载参数中(ext2/ext3/ext4/xfs等等)。所以,你几乎无须进行任何动作,ACL就可以直接使用。

下图是Kernel加载时的信息

可见,xfs这个文件系统支持ACL

getfacl

选项与参数:

-m :设置后续的 acl 参数给文件使用,不可与 -x 合用;
-x :删除后续的 acl 参数,不可与 -m 合用;
-b :移除“所有的” ACL 设置参数;
-k :移除“默认的” ACL 参数,关于所谓的“默认”参数于后续范例中介绍;
-R :递回设置 acl ,亦即包括次目录都会被设置起来;
-d :设置“默认 acl 参数”的意思!只对目录有效,在该目录新建的数据会引用此默认值

针对特定使用者设置ACL

u:[使用者帐号列表]:[rwx]

针对特定群组设置ACL

g:[群组列表]:[rwx]

设置有效权限(effective permission)

m:[rwx]

mask可以理解为允许的最大权限

ACL权限继承

使用上述方式对目录设置权限时,在该目录下创建子文件,字目录是不会继承父母来ACL权限的。要想做到继承权限,在设置ACL权限的时候必须指定-d参数,即修改修改默认权限。

getfacl

 

posted @   克拉默与矩阵  阅读(1192)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决
点击右上角即可分享
微信分享提示