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

相关推荐

  • ☞计算机网络{ 基础知识;网卡bonding;网关路由; }

      计算机网络{ 基础知识;网卡bonding;网关路由; }        网络是指“三网”,即电信网络、有线电视网络和计算机网络。计算机网络最早起源于美苏冷战时期ARPANET网络,如今已经发展成为Internet2和NGI等具有多层次结构的网络。不同作用范围的网络可分为:广域网WAN 、局域网LAN 、…

    Linux干货 2016-09-06
  • 实现CenOS7网卡名传统方式

    网卡命令:理念 CentOS 6之前,网络接口使用连续号码命名:eth0、eth1等,当 增加或删除网卡时,名称可能会发生变化 CentOS 7使用基于硬件,设备拓扑和设置类型命名: (1) 网卡命名机制 systemd对网络设备的命名方式 (a) 如果Firmware或BIOS为主板上集成的设备提供的索引信 息可用,且可预测则根据此索引进行命名, 例如en…

    Linux干货 2017-12-19
  • 2016-08-10作业

    1、编写脚本/root/bin/systeminfo.sh, 显示当前主机系统信息,包括主机名,IPv4 地址,操作系统版本,内核版本,CPU 型号,内存大小,硬盘大小。 #!/bin/bash echo "hostname is `hostname`" echo "IPv4 is `ifconfig | sed -n &#03…

    Linux干货 2016-08-15
  • RAID[Redundant Array of Independent Disks | 独立硬盘冗余阵列 ]

    前言 一个技术要知其然还要知其所以然 RAID 独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks),简称磁盘阵列 RAID的基本思想 其基本思想就是把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使性能达到…

    Linux干货 2016-05-20
  • 细说linux上的特殊权限位

    linux上的文件的权限 linux的哲学思想之一就是一切皆文件。这样说来,每台安装了linux的主机上,就会有大量的文件。而另一方面,linux在安全方面有着极为出色的表现。众所周知,linux是一个多用户的系统,因此为一个文件加上合适的权限为显得非常有必要了。linux上的基本权限我就不一一介绍了,请不熟悉的同学自行百度脑补。我们来说说linux上文件和…

    Linux干货 2017-04-10
  • 第二章 linux高级命令的简单使用以及shell脚本的简单制作

    重定向;正则表达式;grep;sed;vim;yum;shell脚本

    Linux干货 2018-03-17