• acl是基于文件系统的,所以支不支持acl在于使用什么文件系统。

    FAT32文件系统不支持权限,也不区分大小写

  • 如果一个分区不是安装系统时分的分区,是一个新的分区的话,默认是不支持acl

CentOS7 之前版本,默认手工创建的ext4文件系统无ACL功能,需手动增加

tune2fs –o acl /dev/sdb1
mount –o acl /dev/sdb1 /mnt/test
  • CentOS7 默认创建的xfs和ext4文件系统具有ACL功能

ACL生效的顺序

  • 顺序:所有者------->自定义用户------->自定义组------->其他人
[root@centos7 aubin]# getfacl file
# file: file
# owner: root
# group: root
user::rw- #所有者
user:aubin:-w- #自定义用户
group::r-- #冒号中间为空,指的是所属组
group:aubin:--- #自定义组
mask::rw-
other::r--
  • 权限的最后一位变成 + 这里设置了acl
[root@centos7 app]# ls -al
-rw-r--r--+ 1 root root 8 Jul 25 09:54 file
  • ACL写权限
  • acl只给用户写权限,不给读权限。那么用户无法查看文件内容。

    用户可以追加,但是直接编辑会覆盖
[root@centos7 app]# setfacl -m u:aubin:w file

acl的设置与查看

  • acl的设置与删除
#设置用户的acl权限
[root@centos7 aubin]# setfacl -m u:aubin:rw fstab
#设置组的acl权限
[root@centos7 aubin]# setfacl -m g:root:rx fstab
[root@centos7 aubin]# getfacl fstab
# file: fstab
# owner: aubin
# group: aubin
user::---
user:aubin:rw-
group::rw-
group:root:r-x
mask::rwx
other::---
#
#删除指定的acl权限
[root@centos7 aubin]# setfacl -x g:root fstab

acl的递归

  • acl的复制与清除
#复制文件的acl权限
[root@centos7 aubin]# getfacl fstab | setfacl --set-file=- file
#清除acl的默认
[root@centos7 aubin]# setfacl -k fstab
#删除所有的acl权限
[root@centos7 aubin]# setfacl -b fstab

acl的备份与恢复

主要的文件操作命令cp和mv都支持ACL,只是cp命令需要加上-p 参数。但是tar等常见的备份工具是不会保留目录和文件的ACL信息

#将acl信息重定向到acl.bak
[root@centos7 aubin]# getfacl -R fstab > ./acl.bak
[root@centos7 aubin]# cat acl.bak
# file: fstab
# owner: aubin
# group: aubin
user::---
user:aubin:rw-
group::rw-
mask::rw-
other::---
#清除文件或文件夹的acl规则
[root@centos7 aubin]# setfacl -R -b fstab
#恢复
[root@centos7 aubin]# setfacl -R --set-file=acl.bak /app/aubin/fstab

最新文章

  1. MyBatis源码分析-SQL语句执行的完整流程
  2. Resource governor2:Configuration query
  3. Python内建的对象列表
  4. jquery noConflict详解
  5. hive和ORACLE语法对比
  6. ORACLE SQL前端补0的三种方式。
  7. ios tabbar 文字位置
  8. Excel两行交换及两列交换,快速互换相邻表格数据的方法
  9. Oracle 联合主键
  10. Effective C++ 学习总结
  11. HDU_1874——最短路问题,Dijkstra算法模版
  12. [学习opencv]高斯、中值、均值、双边滤波
  13. Spring mvc中junit测试遇到com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException错误怎么解决
  14. vncdotool - A command line VNC client
  15. Java中的字符串截取(substring)的使用
  16. Spring MVC 架构的java web工程如何添加登录过滤器
  17. ssm框架junit简单测试_我写
  18. PAT Waiting in Line[转载]
  19. Python小白学习之路(十一)—【局部变量和全局变量】【关键字global】【关键字nonlocal】
  20. 钉钉企业的CorpId 查看

热门文章

  1. 企业级Docker私有仓库部署(https)
  2. R语言-探索多个变量
  3. 精通libGDX游戏开发-RPG实战-开发游戏的基本前提
  4. ASP.NET控件GridView的使用& Xml操作注意事项
  5. ABP官方文档翻译 6.1.2 MVC视图
  6. ABP官方文档翻译 4.2 数据传输对象
  7. js 面向对象 继承
  8. Java中native关键字[转]
  9. 2018/1/28 RocketMq学习笔记
  10. 多路复用select