笔记整理:权限管理3-ACL

ACL

访问控制列表,并不是所有的Linux文件系统,都支持ACL。FAT文件系统也不支持ACL

笔记整理:权限管理3-ACL

 

ACL文件系统中,不支持chmod等命令。同时不能更改文件权限。不存在文件权限。

问题提出

笔记整理:权限管理3-ACL

只让wang用户,对该文件不能够访问,同时不影响其他任何用户对该文件的操作。

 

ACL特点

针对单一用户或群组,单一文件或目录,进行rwx权限设置

默认属性(mask):设置在目录下新建文件/目录时设置新数据的默认权限。

查看设备是否支持ACL

启动ACL

查看是否支持ACL

1:使用mount命令查看

笔记整理:权限管理3-ACL 

括号中不包含acl,所以列出的设备中,目前不支持acl

2:使用dumpe2fs ,由superblock来查看是否支持acl

笔记整理:权限管理3-ACL 

开启ACL

方法1

笔记整理:权限管理3-ACL 

方法2

直接修改文件/etc/fstab,在文件尾部加入:

笔记整理:权限管理3-ACL 

设置&查看ACL

ACL的设置和查看,主要都通过命令getaclsetacl

命令setacl

设置后,权限部分为-rwxrwxrwx+,最后一位为加号,就是有acl设置的。

普通格式:

setfacl   [-bkRd]   [{-m | -x} acl参数]   目标文件名
setfacl  --set  完整ugo权限+acl参数  filename  // 重置文件权限

选项说明:

-m 设置后续的acl给文件使用,不可与-x连用
-x 删除后续的acl

笔记整理:权限管理3-ACL

-k 删除默认的acl参数
-R 递归设置acl参数
-d 设置默认acl参数,只对目录有效,新建数据会引用此默认值,旧的数据不会改变原来的权限

ACL参数格式

针对用户的:

u:[用户账号列表]:[rwx]

针对组的:

g:[用户组列表]:[rwx]

迭代修改目录中:

setfacl -Rm g:sale


s:rwX directory

//X是保留原来的x权限状态

根据某文件的acl情况,更改另一文件的acl情况

setfacl -M  file1.acl  file2.acl | dir

 

笔记整理:权限管理3-ACL

命令getacl

查看acl

语法格式:

getacl   filename

getaclsetacl实例

1getacl实例

笔记整理:权限管理3-ACL

2:删除文件f1上的acl权限

笔记整理:权限管理3-ACL

3:清空f1文件上的所有权限:

笔记整理:权限管理3-ACL

4:批量添加acl权限

1:新建文件acl1

2:将以下内容写入:

u:wang:0

u:wangcai:rw

g:it:w

3:执行

笔记整理:权限管理3-ACL

5:批量删除某两个用户的权限:

1:新建文件acl2

2:在acl2中写入下面内容:

u:wang

u:wangcai

3:执行:

笔记整理:权限管理3-ACL

6:复制file1的acl权限给file2

getfacl file1 | setfacl –set-file=- file2

笔记整理:权限管理3-ACL 

笔记整理:权限管理3-ACL 

7对目录设置默认acl权限

新的文件会有,旧的文件并不改变

笔记整理:权限管理3-ACL

-d选项是设在directory上的,但是文件夹本身没有acl,只是对文件夹内新的文件有影响:

 

 

笔记整理:权限管理3-ACL 

mask in acl

说明:

  • mask的意义:安全边界

  • mask是一条高压线,除了owner和other,其他用户都将受影响

  • mask需要与用户或组的权限进行逻辑运算后,才能变成有效权限

  • 开启了文件的acl权限之后,设置组的权限,就是在设置mask的权限

笔记整理:权限管理3-ACL

解析:上图中,mask的权限为–x,那么user:wang:rwx中,只有x是有效的,rw都是无效的,所以有效权限(effective:–x),group::r–中,r是无效的,但是因为group也没有x的权限,所以x也是无效的。

  • 一般的操作,如cp(需要加-p)和mv,都会保留acl权限,但是tar不会,具体见实例3:备份

设置

用setfacl -m m::rw f1来修改mask

setfacl -m mask::rw f1

 

实例1

笔记整理:权限管理3-ACL

笔记整理:权限管理3-ACL

笔记整理:权限管理3-ACL

这个实例中,当添加acl权限后,文件f1的所属组权限,已经不是原来的那个权限了,而是mask的权限

 

实例2

笔记整理:权限管理3-ACL

实例3:备份

使用tar等常见的备份工具是不会保留目录和文件的acl信息的。

那么如何在tar的同时保留acl信息呢?

需要在备份的同时,单独备份acl信息。

1. 打包tar文件后

2. 备份acl权限:getfacl -R wu > acl.txt

3. 恢复tar文件后

4. 恢复acl权限:

setfacl -R -b wu

setfacl -R –set-file=acl.txt wu

笔记整理:权限管理3-ACL笔记整理:权限管理3-ACL 

 

上图中,第一条是在打包tar的时候用来备份acl权限的

后面三条是在恢复时用的

 

原创文章,作者:m20-吴清玲,如若转载,请注明出处:http://www.178linux.com/29165

(0)
m20-吴清玲m20-吴清玲
上一篇 2016-08-05 10:18
下一篇 2016-08-05 10:18

相关推荐

  • shell编程作业

    1、编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小。 [root@localhost sh.log]# cat systeminfo.sh  #!/bin/bash #author:DYW #显示当前主机系统…

    Linux干货 2016-08-15
  • lvs-DR模型构建高性能集群

    构建环境:centos7.1     Diretor server:172.16.15.131  (  VIP:172.16.15.138 )     Real server:172.16.15.132/133      配置163源 拓扑…

    Linux干货 2016-08-22
  • 文件查找命令之find

    文件查找命令之find   特点:实时查找,精确查找,由于find是全磁盘文件查找所有查找速度要比locate略慢一些。   find查找功能强大,下面主要介绍find查找条件的一个重要特性–德·摩根定律     德·摩根定律      非(A &&B)=(非A…

    Linux干货 2016-08-16
  • linux 网络管理

    1、ifconfig命令格式: ifconfig[interface] 查看IP ifconfig-a 查看全部网卡信息 ifconfigIFACE [up|down] 网卡开启关闭 ifconfigIFACE IP/netmask [up] ifconfigIFACE IP netmask NETMASK 命令立即生效,不能永久保存  &nbsp…

    Linux干货 2017-08-20
  • tomcat

      编程语言:硬件级:微码编程,汇编语言系统级:C,C++,…应用级:Java, PHP, Python, Ruby, Perl, C#, …Python: PVMStandard LibraryWeb Framework:Django, Flask, …Java:JVM,JDKbash:bash ex…

    Linux干货 2017-05-22
  • shell脚本中if与case使用,查找文件locate与find的使用,压缩,解压及归档工具

    shell脚本中if与case使用 查找文件locate与find的使用 压缩,解压及归档工具 执行的循序  顺序执行  选择执行  循环执行 条件语句if if只是一个有含义的词,不能单独作为指令使用。 单分支      if 条件判断:then       &nbs…

    Linux干货 2016-08-18

评论列表(1条)

  • m20-吴清玲
    m20-吴清玲 2016-08-12 15:48

    默认ACL权限给了x,文件也不会继承x权限