Linux文件权限之facl

1、什么是facl

        facl(file access control list)文件访问控制列表,主要目的是在原有的u,g,o之外,另一层让普通用户能控制赋权给另外的用户或组的机制;

        facl可以针对单一的用户或组,对文件或目录进行r, w, x的权限设置。

2、如何使用

        getfacl:查看某个文件或目录的acl设置信息;

        setfacl:设置某个文件或目录的acl信息;

        用法:

             getfacl命令:                    

getfacl FILE…

user:USERNAME:MODE

group:GROUPNAME:MODE

 例如:            

[centos@CentOS7 tmp]$ getfacl a.cetos 
# file: a.cetos
# owner: centos
# group: centos
user::rw-
group::rw-
other::r--
这里因为我们还没有设置facl所以只能看到传统的u,g,o权限信息;

setfacl命令:

赋权给用户:

setfacl -m u:USERNAME:MODE FILE…

赋权给组:

setfacl -m g:GROUPNAME:MODE FILE…

 例如:

1、针对特定用户的方式:
设置规定:“u:[用户账号列表]:rwx”,例如针对hadoop的权限设置为rw
[centos@CentOS7 ~]$ cd /tmp
[centos@CentOS7 tmp]$ touch a.centos
[centos@CentOS7 tmp]$ ll a.centos 
-rw-rw-r--. 1 centos centos 0 Aug 21 16:39 a.centos
[centos@CentOS7 tmp]$ setfacl -m u:hadoop:rw a.centos 
[centos@CentOS7 tmp]$ ll a.centos 
-rw-rw-r--+ 1 centos centos 0 Aug 21 16:39 a.centos
权限部分多了个+号。

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

(0)
FutureFuture
上一篇 2016-09-19
下一篇 2016-09-19

相关推荐

  • Shell脚本自动部署(编译)LAMP平台

    Shell脚本自动部署(编译)LAMP平台 Shell脚本自动部署(编译)LAMP平台 为什么要用脚本进行部署? 脚本功能介绍 笔者环境 准备工作 声明 使用测试 脚本代码 Shell脚本自动部署(编译)LAMP平台 LAMP是当下非常流行的一套Web架构,我们可以在GNU/Linux下通过其他人打包的程序包来进行安装; 但是在生产环境中,很多时候都需要我们…

    Linux干货 2016-03-26
  • 从Linux小白到大牛——与狼共舞的日子3

    马哥教育网络班21期+第3周课程练习 1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who root :0   2016-07-23 08:55 (:0) wangsining pts…

    Linux干货 2016-07-26
  • bash脚本编程练习:判断、循环

      1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # declare -i sumlogin=0 declare -i sumnologin=0 for&nbs…

    Linux干货 2016-11-22
  • LVM逻辑卷管理

    一、lvm介绍     1.lvm概念                        &n…

    Linux干货 2016-09-02
  • 第一周博客作业

    计算机的组成 CPU:运算器、控制器、寄存器、缓存 存储器:内存 RAM(Random-Access Memory) Input:输入指令、提供数据 Output: 输出数据加工后的结果 功能: 输入设备负责把用户的信息输入到计算机中 输出设备负责将计算机中的信息(包括程序和数据)传送到外部媒介,供用户查看或保存; 存储器负责存储数据和程序,并根据控制命令提…

    Linux干货 2017-01-10
  • keepalive配置文件详解

    第一部分:全局定义块 1、email通知。作用:有故障,发邮件报警。 2、Lvs负载均衡器标识(lvs_id)。在一个网络内,它应该是唯一的。 3、花括号“{}”。用来分隔定义块,因此必须成对出现。如果写漏了,keepalived运行时,不会得到预期的结果。由于定义块内存在嵌套关系,因此很容易遗漏结尾处的花括号,这点要特别注意。 global_defs{ n…

    2017-09-17