GlusterFS 之 POSIX ACLs
传统上,
权限三组:拥有者 (file owner),群组 (group),及 其它 (other)
属性三种:读取 (read),写入 (write),及 执行(executable)
chmod [who] [opt] [mode] 文件/目录名
其中who表示对象,是以下字母中的一个或组合: |
opt则是代表操作,可以为: |
而mode则代表权限: |
u:表示文件所有者 g:表示同组用户 o:表示其它用户 a:表示所有用户 |
+:添加某个权限 -:取消某个权限 =:赋予给定的权限,并取消原有的权限 |
r:可读 w:可写 x:可执行 |
我们将rwx看成二进制数,如果有则有1表示,没有则有0表示,那么rwx r-x r- -则可以表示成为: 111 101 100 再将其每三位转换成为一个十进制数,就是754。
存取控制清单 (Access Control List,简称 ACL)
ACL 实为现有权限机制的延伸,在三个基本设定 (拥有者,群组及其它)外,允许我们加入对某指定使用者或群组的存取权限设定。
大家常用的文件系统,如:ext3、xfs、jfs和 ReiserFS,都能使用ACL。
要查看一个文件或目录的 ACL,需要使用 “getfacl” 指令:getfaclreport.doc
如果需要更改一个档案或目录的 ACL,可以使用setfacl 指令,其用法如下:
setfacloption rules files
Glusterfs之POSIX ACL文件权限管理
在服务端启用POSIXAccess Control Lists (ACLs)
如果需要使用POSIX Access Control Lists (ACLs) ,那么在服务器端挂接逻辑卷时就需要指定acl选项,如下所示:
#mount -o acl /dev/sda1 /export1
在/etc/fstab文件中可以这样配置:
LABEL=/work/export1 ext3 rw, acl 14
在客户端启用POSIXAccess Control Lists (ACLs)
#mount -t glusterfs -o acl 198.192.198.234:glustervolume /mnt/gluster
设置POSIX ACLs
一般地,你可以设置两种类型的POSIX ACLs,access ACLs和default ACLs。前者用于对一个指定的目录或文件设置访问策略,而后者则为目录及目录中的文件提供一种默认的访问控制策略。你可以基于每个用户、用户组以至于不在文件属组内的其它用户,来设置ACLs。
设置access ACLs命令格式:# setfacl -m file
下表为可以设置的权限项目和格式要求,其中<permission>必须是r (read), w (write),and x (execute)的组合形式。
ACLEntry
Description
u:uid:\<permission>
Setsthe access ACLs for a user. You can specify user name or UID
g:gid:\<permission>
Setsthe access ACLs for a group. You can specify group name or GID.
m:\<permission>
Setsthe effective rights mask. The mask is the combination of all accesspermissions of the owning group and all of the user and group entries.
o:\<permission>
Setsthe access ACLs for users other than the ones in the group for the file.
授权对象可以是文件,也可以是目录。例如,为用户antony授权testfile的读写权限。
[root@pc3test-disperse]# setfacl -m u:antony:rw /mnt/gluster/data/testfile
设置defaultACLs的命令格式:# setfacl -d -m
例如,设置/data目录的默认ACLs为向不在文件所属用户组内的其它所有用户,开放只读的权限:
[root@pc3test-disperse]# setfacl -d -m o::r /mnt/test-disperse
注:如果同时设置了default acls和access acls,则access acls优先级更高。
查看已经设置的POSIXACLs
查看文件的access acls:[root@pc3 test-disperse]# getfacl targetfile
查看目录的default acls:
[root@pc3test-disperse]# getfacl /mnt/test-disperse
getfacl:Removing leading '/' from absolute path names
#file: mnt/test-disperse
#owner: root
#group: root
user::rwx
group::r-x
other::r--
移除POSIX ACLs
例如,移除用户antony对test-file的所有访问权限:
[root@pc3test-disperse]# setfacl -x u:antony /mnt/gluster/data/test-file
Samba and ACLs
如果你使用Samba访问GlusterFS FUSE挂接的存储卷,那么POSIX ACLs会默认被启用。
GlusterFS 之 POSIX ACLs相关推荐
- configure: error: Support for POSIX ACLs is required
安装Glusterfs时报如下错误 checking sys/acl.h usability- no checking sys/acl.h presence- no checking for sys/ ...
- 深入理解GlusterFS之POSIX接口
(TaoCloud团队原创 作者:林世跃@TaoCloud) FUSE是用户空间的文件系统接口,FUSE内核模块为普通应用程序与内核虚拟文件系统VFS的交互提供了一个桥梁.基于FUSE用户空间模块,开 ...
- 搭建glusterfs集群
搭建glusterfs集群 Glusterfs简介 GlusterFS是Scale-Out存储解决方案Gluster的核心,它是一个开源的分布式文件系统,具有强大的横向扩展能力,通过扩展能够支持数PB ...
- glusterfs java_GlusterFS: 访问权限设置
GlusterFS: 访问权限设置 GlusterFS支持基于POSIX Access Control Lists的访问权限设置,在Ubuntu或者类似的系统上,只需要使用setfacl或getfac ...
- 分布式存储——GlusterFS
原文链接:分布式存储-GlusterFS_西风未眠的技术博客_51CTO博客 文章目录 GlusterFS 简介 GlusterFS集群搭建 1.gfs集群安装前提 2.测试服务器规划 3.四台gfs ...
- GlusterFS元数据机制分析
TaoCloud团队原创:微信公众号文章访问 GlusterFS作为一个免费开源的分布式文件系统,以其简约的架构设计,完善的协议支持,无中心节点.全局统一命名空间.高可用.高性能.横向扩展等特点,拥 ...
- 一篇文章搞懂 HDFS ACLs权限管理
小米的HDFS承载了公司内多个部门几十条业务线的几十PB数据,这些数据有些是安全级别非常高的用户隐私数据,也有被广泛被多个业务线使用的基础数据,不同的业务之间有着复杂的数据依赖.因此,如何管理好这些数 ...
- GlusterFS原创资源
GlusterFS分布式文件系统原创资源合集,持续更新补充,方便自己和广大同学查阅. [1] GlusterFS集群文件系统研究 [2] 基于开源软件构建高性能集群NAS系统 [3] 创建Gluste ...
- java访问glusterfs_GlusterFS: 访问权限设置
GlusterFS: 访问权限设置 GlusterFS支持基于POSIX Access Control Lists的访问权限设置,在Ubuntu或者类似的系统上,只需要使用setfacl或getfac ...
最新文章
- 哈哈哈,这个教人写烂代码的项目在 GitHub 上火了...
- git show查看本地文件的修改部分,git diff 如何比较文件,git grep 搜索
- python2与python3性能对比_对Python2与Python3中__bool__方法的差异详解
- PCL点云 Lebel:Research
- java a%2==0_Java 初始化a=2 打印a+++a++为5
- 软件测试技术第一次试验之——JUnit的安装与使用
- 2018/12/06 eclipse 快速加载需要的包
- java kill 进程 时间_kill及kill-9的用法及如何实现进程的优雅退出
- SQL SERVER 和ACCESS/excel的数据导入导出
- AutoLayout 的一些坑
- 语义slam_【语义SLAM】MIT 新开源语义VIOSLAM框架 kimera
- 基于三台主机部署phpwind
- 余额宝不是吸血鬼,银行才是
- 性能测试--11Beanshell的脚本开发技术
- 关于android硬件加速器的问题
- 手把手教你用Execel求解一个矩阵的逆矩阵
- sql 2008 R2 备份和还原
- 【SSDT】SSDT hook技术
- Web Moudle
- 腾讯面试居然跟我扯了半小时的CountDownLatch
热门文章
- 跨平台web app教育设备的一些设计标准
- 仅300员工却垄断全球,几亿一台还供不应求
- 匹配的通配符很全面,但无法找到元素mvc:annotation-driven的声明
- 阿里云Linux服务器新手入门(2核4G)
- 羊毛出在狗身上让猪来买单 - 智能音箱背后的平台经济...
- 开发一个APP有多难?APP开发流程、开发成本揭秘
- 在 Linux CentOS7 上安装 Maven
- python json库安装_python-安装simplejson后没有名为“ json”的模块
- 基于ACCESS的教师工作量计算系统的设计与实现(含源文件)
- BUAA OJ 722 Gzh之表达式求值