一、ACL文件访问控制列表

前言

1️⃣:ACL—文件访问控制列表;

2️⃣:ACL可以针对单个用户,单个文件或目录来进行r、w、x的权限设定,特别适用于需要特殊权限的使用情况。

3️⃣:ACL就是可以设置特定用户或用户组对于一个文件/目录的操作权限,可以实现灵活的权限管理,除了文件的所有者,所属组和其它人,可以对更多的用户设置权限

4️⃣:ACL就是可以设置特定用户或者用户组对于一个文件/文件夹的操作权限

5️⃣:LINUX上的ACL访问控制列表,主要的目的是在提供传统的u(user)、g(group)、o(other)的r(read)、w(write)、x(execute)权限之外的局部权限设定

1、ACL管理命令

getfacl
setfacl

2、ACL形式

每个片段的形式都如:tag:name:perm
tag可以是下面形式的一种:
user 表示这是一个用户的ACL条目
group 表示这是一个用户组的ACL条目
other 表示这是其它的ACL条目
mask 表示这是一个掩码的ACL条目,最大的有效权限(权限阈值) name 可以是用户名或组名
perm 是指该用户或组所具有的权限,它是由"rwx"组成的一个字符串

3、setfacl

setfacl
使用 setfacl 设定文件访问控制列表
语法 setfacl {-m|-x|-b|-d ...} filename 选项
-m, --modify=acl 设置ACL条目,不可与-x一起使用
-x, --remove=acl 删除所设置的ACL条目,不可与-m一起使用
-b, --remove-all 删除所有ACL条目(包括默认的ACL条目)
-k, --remove-default 删除默认ACL条目
-R, -- recursion 递归设置ACL条目,包括余下的子目录或子文件都将被设置ACL条目
-d, --default 对目录设置默认的ACL条目,并且在改目录下创建的文件都将继承该目录的默认ACL条目(该选项只能对目录生效) 示例
setfacl -m u:zyq:rwx test.sh
user 简写为u,
group 简写为g
other 简写为o 注意:使用 -m 对other设置facl的时候,只需指明对应的权限即可,无需指明特定的用户;其次,对其他用户无法使用-x选项,因为,其他用户不同于所属主和所属组,只需给特定的权限即可

4、getfacl

getfacl
使用getfacl可以获取文件访问控制列表
语法:getfacl filename 选项
-a, --access 仅显示文件访问控制列表
-d, --default 仅显示默认的访问控制列表
-c, --omit-header 不显示注释表头 示例
getfacl test.txt
# file: test.txt //文件名
# owner: root //文件拥有者
# group: root //文件拥有组
user::rw- //说明该文件的拥有者拥有读和写的权限
group::rw- //说明该文件的拥有组有读和写的权限
mask::rw- //说明mask的权限是读和写
other::--- //说明其他人没有权限访问该文件

5、操作示例

//创建ACL条目
[root@localhost ~]# ll test
-rw-r--r--. 1 root root 0 8月 5 15:33 test
[root@localhost ~]# setfacl -m u:zhangsan:rw test
[root@localhost ~]# getfacl test
# file: test
# owner: root
# group: root
user::rw-
user:zhangsan:rw- //说明zhangsan用户对该文件拥有读和写的权限
group::r--
mask::rw- //mask权限说明zhangsan用户对改文件的权限最大只能是读和写
other::r-- //删除ACL条目
[root@localhost ~]# setfacl -x u:zhangsan test
[root@localhost ~]# getfacl test
# file: test
# owner: root
# group: root
user::rw-
group::r--
mask::r--
other::r-- //给目录设置默认的ACL条目
[root@localhost ~]# mkdir dir
[root@localhost ~]# ll -d dir
drwxr-xr-x. 2 root root 6 8月 5 15:41 dir
[root@localhost ~]# setfacl -m d:u:zhangsan:rw dir
[root@localhost ~]# getfacl dir/
# file: dir/
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
default:user::rwx
default:user:zhangsan:rw-
default:group::r-x
default:mask::rwx
default:other::r-x //在dir目录下创建一个文件,看是否继承该目录的ACL条目
[root@localhost ~]# touch dir/file1
[root@localhost ~]# getfacl dir/file1
# file: dir/file1
# owner: root
# group: root
user::rw-
user:zhangsan:rw-
group::r-x #effective:r--
mask::rw-
other::r-- //删除dir目录的默认ACL条目
[root@localhost ~]# setfacl -k dir
[root@localhost ~]# getfacl test
# file: test
# owner: root
# group: root
user::rw-
group::r--
mask::r--
other::r--
或者
[root@localhost ~]# setfacl -b dir/
[root@localhost ~]# getfacl dir/
# file: dir/
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

Linux_ACL文件访问控制列表的更多相关文章

  1. setfacl 设置文件访问控制列表

    setfacl 设置文件访问控制列表 用法: setfacl [-bkndRLP] { -m|-M|-x|-X ... } file ... 参数: -m, --modify=acl 更改文件的访问控 ...

  2. 文件访问控制列表facl

    [root@bogon code]# getfacl a.c //获取文件a.c的文件访问控制列表 # file: a.c # owner: root # group: root user::rw- ...

  3. Linux之facl----设置文件访问控制列表(详解)

    setfacl命令 是用来在命令行里设置ACL(访问控制列表) 选项 -b,--remove-all:删除所有扩展的acl规则,基本的acl规则(所有者,群组,其他)将被保留. -k,--remove ...

  4. Linux FACL(文件访问控制列表)

    文件有三种权限 属主权限   属组权限  其他权限 现在有这样一个场景,用户 A 想把文件共享给不是同组内用户 B ,而又不想修改其他权限,这时候 FACL 就起作用了 FACL可以给文件添加一个拓展 ...

  5. Centos下ACL(访问控制列表)介绍(转)

    我们知道,在Linux操作系统中,传统的权限管理分是以三种身份(属主.属組以及其它人)搭配三种权限(可读.可写以及可执行),并且搭配三种特殊权限(SUID,SGID,SBIT),来实现对系统的安全保护 ...

  6. Linux 系统访问控制列表ACL

    常见的文件系统的一般权限(rwx).特殊权限(SUID,SGID,STICK).隐藏权限(chattr)其实有个共性——权限是针对某一类用户设置的.而如果希望对某个指定的用户进行单独的权限控制,那么就 ...

  7. CentOS 7 文件权限之访问控制列表(ACL)

    Linux的ACL是文件权限访问的一种手段.当拥有者所属组其他人(own,group,other)不能满足给一个单独的用户设置单独的权限时,ACL的出现就很好的解决了该问题. 比如其他用户own,不属 ...

  8. 浅谈访问控制列表(ACL)

    1.ACL简介2.前期准备3.ACL的基本操作:添加和修改4.ACL的其他功能:删除和覆盖5.目录的默认ACL6.备份和恢复ACL7.结束语 1.ACL简介 用户权限管理始终是Linux系统管理中最重 ...

  9. Cmd下修改文件访问控制权限

    保证自己的磁盘分区格式是NTFS.FAT32是不行的. 一.Cacls.exe命令的使用 这是一个在Windows 2000/XP/Server 2003操作系统下都可以使用的命令,作用是显示或者修改 ...

随机推荐

  1. nacos下载慢吗?来这里

    https://gitee.com/soul_PreCoder/springcloudalibab/repository/archive/master.zip

  2. 北航OO第二单元作业总结(2.1~2.3)

    在经过第一单元初步认识面向对象编程思想后,本蒟蒻开始了第二单元--多线程部分的学习.本单元的作业是构造符合条件的"目的选层电梯"模型,自行设计调度算法,进行合理调度,完成所有乘客的 ...

  3. canvas判断点是否在路径内

    应用场景 我们的项目中有个功能是,canvas上的某个图片选中后可以再这个图片上用鼠标拖拽绘制画笔线条. 当然绘制的边界要控制在图片大小范围内的,那么鼠标是可以随意动的,怎么能控制只在图片上的时候才绘 ...

  4. 机器学习--PR曲线, ROC曲线

    在机器学习领域,如果把Accuracy作为衡量模型性能好坏的唯一指标,可能会使我们对模型性能产生误解,尤其是当我们模型输出值是一个概率值时,更不适宜只采取Accuracy作为衡量模型性泛化能的指标.这 ...

  5. uni-app 微信小程序授权登录

    1.微信小程序 获取用户信息 与获取手机号 详细信息看官方公告:https://developers.weixin.qq.com/community/develop/doc/000cacfa20ce8 ...

  6. Python学习从入门到放弃?我不允许!!!

    嗨,大家好 这里是汐仔 很多人都说学习python学习python,打开书本,三分钟,从入门到放弃. 这怎么可以!!!大家能选择python的原因可能是看它既简单,好入门,现在俨然是语言中的一匹黑马. ...

  7. DPAPI机制学习

    0x00 前言 ​绝大多数应用程序都有数据加密保护的需求,存储和保护私密信息最安全的方式就是每次需要加密或解密时都从用户那里得到密码,使用后再丢弃.这种方式每次处理信息时都需要用户输入口令,对于绝大多 ...

  8. 从苏宁电器到卡巴斯基第29篇:难忘的三年硕士时光 VII

    我们可能无家可归 那天晚上和导师道别后,我们几个还聚在一起开了一个小会.当时大家觉得最坏的情况就是学院不肯让步,不能满足我们导师提出的条件.那么这样的话,我们几个只能够重新找导师了.而我们数媒专业里面 ...

  9. Fidder抓包软件的使用

    Fiddler是一款强大的Web调试工具,它能记录所有客户端和服务器的HTTP和HTTPS请求.Fiddler是通过改写HTTP代理,让数据从它那通过,来监控并且截取到数据.当然Fiddler很屌,在 ...

  10. UVA11520填充正方形

    题意:      给你一个n*n的矩阵,让你往里面添加大写字母,矩阵有的字母已经给填好了,然后要求是每个格子都不能与他相邻的格子的大写字母相同,如果有多个答案,输出从上到下,从左到右所连接的成的那个n ...