笔记整理:权限管理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的设置和查看,主要都通过命令getacl和setacl

命令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

getacl和setacl实例

1:getacl实例

笔记整理:权限管理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

相关推荐

  • HA Cluster:keepalived

    HA Cluster 集群类型:LB(lvs/nginx(http/upstream, stream/upstream))、HA、HP 系统可用性的公式:A=MTBF/(MTBF+MTTR) 系统故障: 硬件故障:设计缺陷、wear out、自然灾害 软件故障:设计缺陷 提升系统高用性的解决方案之降低MTTR: 解决方案:冗余(redundant) acti…

    Linux干货 2017-06-26
  • rsyslog日志系统

    一、前言  什么是日志?    日志就是历史事件,按时间序列将发生的事件予以记录;日志记录信息记录的是事件的发生时间以及事件内容  Linux下记录日志的系统:    syslog:是CentOS 5.0系统上使用的日志系统,有两类日志,分别是syslogd、klogd;    …

    Linux干货 2015-06-15
  • inode、软硬链接区分、ln命令

    inode、软硬链接区分、ln命令 一、inode inode记录的是文件的属性及文件实际放在那块数据块中的。inode包含以下数据: 1. 该文件的可被访问的权限(read/write/excute) 2. 该文件的属主、属组(owner、group) 3. 该文件的大小 4. 该文件创建或者状态改变的时间(Ctim…

    Linux干货 2016-08-02
  • Linux系统常用命令介绍

    [root@alibaba ~]# ifconfig #查看或者配置网络适配器的接口信息 eth0      Link encap:Ethernet  HWaddr 00:16:3E:0A:7B:2A inet addr:172.18.10.115  Bcast:172.18.15.255  Mask:255.255.240.0 [root@alibaba …

    Linux干货 2018-03-04
  • Linux的文件查找之find的使用

    文件查找   本章节内容:   使用locate命令   使用find命令   使用Gnome搜索工具    一、文件的查找(find和locate的对比): 文件查找:是在文件系统上查找符合条件的文件。 locate find 查找时效性 非实时查找 实时查找 文件索引数据库 需要依赖查询系统上预…

    Linux干货 2016-08-15

评论列表(1条)

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

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