ACL权限实例详解

CentOS7当中,无论是操作系统安装时还是之后手工创建的文件系统(xfsext4)均会开启ACL功能。

CentOS6及之前的版本,仅操作系统安装时创建的文件系统才会默认开启ACL手工创建的文件系统,需要手工开启ACL

功能。

Acl如何设置

ACL权限实例详解

创建分区

ACL权限实例详解

mount -o acl /dev/sda7  取消的方式,重新挂载时不指定即可

tune2fs -o acl /dev/sda7 取消的方式 tune2fs -o ^acl /dev/sda7

ACL权限实例详解

ACL权限实例详解

ACL权限实例详解

这里的feiyan1 ,liluo2,qingchen3都是人名,加上123只是为了方便看

  Liluo2group组里,f1属于feiyan1这个人,属于liluo2这个组

Group权限是rw-,liluo2只能对文件f1进行读操作,rw-相当于是r

 下面把group的权限改为了rwxliluo2属于group组成员,理论上也应当具有rwx权限

而实际上liluo2只具有rw-也就是只有r权限,和原来一样权限并没有改变,这样为什么呢?

  因为在设置了Acl以后,group的位置就被umask占了,所以你看到的原来组的位置实际上是umask的权限,一旦设置了acl,原来组的权限就无法改变了,原来group权限是什么就是什么,虽然设置acl后无法改变但依然生效,即使你使用了g+rwx 组的权限依然不变,变的是umask

实例如下:

ACL权限实例详解

权限的优先顺序

   文件的owner权限优先于acl权限

ACL权限实例详解

ACL权限实例详解

ACL权限判断的顺序

先判断是否是文件的OWNER,如果是,则执行OWNER的权限后结束,如果不是OWNER,则判断是否是ACLUSER,如果是则执行USER权限后结束,如果不是ACLUSER, 则判断是否属于GROUPACL GROUP,如果是,则取最大权限(两个权限的并集)。如果不属于任何GROUP,则执行OTHER。  原生的groupacl group没有优先的关系,权限组合一起使用

我们之前设置的都是基于当前已存在的文件生效的,那么要想对于为来创建的文件也有acl权限(未来新创建的文件创建既有acl权限)该怎么做呢?

ACL权限实例详解

作用如图

ACL权限实例详解

那么在liluo2用户下创建的新文件有没有acl属性呢,我们来看实验

发现依然有acl属性

ACL权限实例详解

setfacl -m d:u:liluo2:rwx f2   设置这句之后发现只要是在f2下新创建的都会创建自带acl属性    —-这就是我们说的默认属性,但是对当前目录不生效

练习:

/app目录下创建一个名为d1的目录,要求其owner,group均为root,权限设置为755。要求guanyu用户对该目录及所有用户在其下创建的新文件新目录均有rwx权限

设置ACL默认权限,仅影响新创建的文件及目录,不影响当前。

实验中guanyu换成了feiyan1

ACL权限实例详解


setfacl -x d:sunquan d11 删除一条默认权限

setfacl -k d1 删除全部默认权限

setfacl -b d1 删除ACL属性

 

getfacl -R /app/d1 > acl.txt 将目录下的所有文件的ACL属性备份到文件

setfacl -R –set-file=acl.txt  /app/d1   通过文件还原ACL属性的方法1

setfacl –restore  acl.txt   通过文件还原ACL属性的方法2

setfacl -R -b /app/d1 清除目录下所有文件的ACL属性

小知识点补充:

拿笔划重点,注意^.的用法

如何恢复家目录:只要一句命令就好了

恢复家目录的操作

     ls -a

     rm  -rf .*

     cp -a /etc/skel/.[^.]* .

      ls -al

      Exit  重新登陆就好了,家目录就回来了,不再演示!

原创文章,作者:sqjl,如若转载,请注明出处:http://www.178linux.com/83080

(1)
sqjlsqjl
上一篇 2017-07-29 15:18
下一篇 2017-07-29 15:28

相关推荐

  • shell脚本一键分区

    #!/bin/bash #实现硬盘自动分区助手 echo "当前所有分区:" echo `fdisk -l|grep "Disk /dev/[sh]d"|cut -d: -f1|awk '{print $2 &q…

    Linux干货 2016-07-26
  • 实验:httpd

    虚拟主机 httpd-2.4示例步骤: 1. 进行规划虚拟主机 192.168.209.8:80,192.168.209.10:80 www.10linux.com,www.iounix.com /var/www/html/10linux,/var/www/html/iounix 2. ]# mkdir /var/www/html/{10linux,ioun…

    Linux干货 2017-06-04
  • 网络班23期学习宣言

    马哥Linux运维学院 学习宣言 亲爱的小伙伴:        欢迎大家报名马哥Linux运维网络学习班,跟随马哥学习Linux技术,成就Linux大牛之梦。在这里,我们不仅可以学习到最优秀的技术课程,还可以跟着追梦的小伙伴们一起学习、一起进步。 为了督促大家一直积极认真努力的学习,请各位同学在评论区写出你的学习宣言。…

    2016-09-05
  • linux基础知识

    基本命令,man自助使用手册,linux文件目录。

    Linux干货 2017-12-11
  • CentOS7 Local yum的一次报错信息

    说明:今天在火车上测试一个CentOS7下的一个服务,要用到yum配置,但是本机没有联网,所以考虑到配置本地yum,按照之前CentOS6下的常规方法,居然发现有报错。 操作如下: 1)虚拟机下将CentOS7光盘加载到系统里面,然后挂载到本地的/localyum上 [root@localhost yum.repos.d]# mount&…

    Linux干货 2016-07-16
  • 01葵花宝典之Linux基础知识

    linux, ifconfig, man, pwd, echo, date, hwclock, fhs

    2018-03-01