Chinaunix首页 | 论坛 | 博客
  • 博客访问: 113819
  • 博文数量: 41
  • 博客积分: 2095
  • 博客等级: 大尉
  • 技术积分: 410
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-22 23:04
文章分类
文章存档

2012年(4)

2011年(1)

2008年(8)

2006年(28)

我的朋友

分类: LINUX

2006-11-23 00:03:47

ACL(Access Control List) 访问控制列表 是一种功能比传统UGO更为强大的权限控制机制。可以针对任意指定的用户/组分配RWX权限。 现在主流的商业Unix系统都支持ACL,FreeBSD也提供了对ACL的支持,Linux 2.6内核配合EXT2/EXT3, JFS, XFS, ReiserFS等文件系统都是可以支持ACL的。

1)在mount中添加acl option使分区支持acl操作,如:
mount -o rw,acl /dev/sda1 /home
 
一般写进/etc/fstab
 
LABEL=/home    /home    ext3    defaults,acl    1    2
ACL中的六种规则
  • ACL_USER_OBJ    传统Unix用户权限
  • ACL_GROUP_OBJ   传统Unix组权限
  • ACL_OTHER       传统Unix其他组权限
  • ACL_USER        为某个用户添加的规则
  • ACL_GROUP       为某个组添加的规则
  • ACL_MASK        规则掩码

定义 ACL_USER,ACL_GROUP_OBJ,ACL_GROUP 三类规则的最大权限。
2)使用命令getfacl 和 setfacl
用setfacl设置文件夹appdir中的所有文件和子目录的acl配置,且设置新建文件和目录的acl配置:
shell> setfacl -d -R -m u:testu1:rwx,u:testu2:rwx,g:testg1:r appdir
用getfacl获取文件夹或文件的acl配置信息:
shell> getfacl appdir

3)acl配置信息的备份与还原

shell> getfacl -R filename.ext > filename.acl.bak
shell> setfacl --restore filename.acl.bak

4)清除所有的acl配置信息
shell> setfacl -R -b appdir
shell> setfacl -x u:user filename.exe

阅读(1163) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~