acl
第 8章 . 访问存取控制列表
文档和目录为他们的任何者、组群、和任何其他系统用户规定了许可权限。但是,这些权限配置也有其局限性。例如:不同的用户无法被配置使用不同的权限。访问存取控制列表(Access Control Lists,ACL)就由此而生。
红帽企业 Linux 3 内核为 ext3 文档系统和 NFS 导出的文档系统提供 ACL 支持。ACL 在通过 Samba 存取的 ext3 文档系统上也被识别。
除了在内核中的支持外,您还需要 acl 软件包才能实现 ACL。其中包含用来添加、修改、删除、和检索 ACL 信息的工具。
cp 和 mv 命令会复制或转移任何和文档和目录相关的 ACL。
8.1. 挂载文档系统
在文档或目录中使用 ACL 之前,他们所在的分区必须使用 ACL 支持来挂载。假如他是本地的 ext3 文档系统,他能够使用以下命令来挂载:
mount -t ext3 -o acl <device-name> <partition> |
例如:
mount -t ext3 -o acl /dev/hdb3 /work |
假如分区被列在 /etc/fstab 文档中,该分区的项目就能够包括 acl 选项,如:
LABEL=/work /work ext3 acl 1 2 |
假如某个 ext3 文档系统是通过 Samba 来存取的,而且其中还启用了 ACL,ACL 就会被识别,这是因为 Samba 已使用 --with-acl-support 选项被编译了。在存取或挂载 Samba 共享的时候无需任何特别标志。
8.1.1. NFS
按照默认配置,假如被 NFS 服务器导出的文档系统支持 ACL,并且 NFS 客户能够读取 ACL,ACL 就会被客户系统利用。
在配置服务器的时候,若要禁用 NFS 共享上的 ACL,则在 /etc/exports 文档中包括 no_acl 选项。要在客户上挂载 NFS 共享的时候禁用其中的 ACL,通过命令行或 /etc/fstab 文档使用 no_acl 选项来挂载他。
8.2. 配置存取 ACL
ACL 有两种:存取 ACL(access ACLs)和默认 ACL(default ACLs)。存取 ACL 是对指定文档或目录的存取控制列表。默认 ACL 只能和目录相关。假如目录中的文档没有存取 ACL,他就会使用该目录的默认 ACL。默认 ACL 是可选的。
ACL 能够按以下条件配置:
每用户
每组群
通过有效权限屏蔽
为不属于文档用户组群的用户配置
setfacl 工具为文档和目录配置 ACL。使用 -m 来添加或修改文档或目录的 ACL:
setfacl -m <rules> <files> |
规则(<rules>)必须使用以下格式指定。同一条命令中能够指定多项规则,只要他们是用逗号分开即可。
- u:<uid>:<perms>
为用户配置存取 ACL。用户名或 UID 必须被指定。用户能够是系统上的任何合法用户。
- g:<gid>:<perms>
为组群配置存取 ACL。组群名称或 GID 必须被指定。组群能够是系统上的任何合法组群。
- m:<perms>
配置有效权限屏蔽。该屏蔽是组群任何者和任何用户和组群项目的权限的合集。
- o:<perms>
为文档的组群用户之外的用户配置存取 ACL。
空格被忽略。权限(<perms>)必须是代表读、写、和执行的字符(r、w、x)的组合。
假如某文档或目录已有了一个 ACL,而
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




