6.22. Acl-2.2.52

Acl 软件包包含管理访问控制列表的工具,访问控制列表用于定义文件和目录更细粒度的自定义访问权限。

大概编译时间: 0.1 SBU
需要磁盘空间: 7.7 MB

6.22.1. 安装 Acl

修改存放文档的目录,使它放在版本特定的目录:



sed -i -e 's|/@pkg_name@|&-@pkg_version@|' include/builddefs.in


修复一些损坏的测试:



sed -i "s:| sed.*::g" test/{sbits-restore,cp,misc}.test


另外,修复一个组名称超长时会使 getfacl -e 出现段错误的错误:



sed -i -e "/TABS-1;/a if (x > (TABS-1)) x = (TABS-1);" \


    libacl/__acl_to_any_text.c


准备编译 Acl:



./configure --prefix=/usr --libexecdir=/usr/lib


编译软件包:



make


在用 Acl 库构建 Coreutils 后,Acl 测试才能在支持访问控制的文件系统上运行。如果需要的话,可以在本章后面构建完 Coreutils 之后回到这个软件包运行 make -j1 tests 进行测试。

安装软件包:



make install install-dev install-lib


chmod -v 755 /usr/lib/libacl.so


需要移动共享库到 /lib,因此需要重建 /usr/lib 中的 .so 文件:



mv -v /usr/lib/libacl.so.* /lib


ln -sfv ../../lib/$(readlink /usr/lib/libacl.so) /usr/lib/libacl.so


6.22.2. Acl 软件包内容

安装的程序: chacl, getfacl, 和 setacl
安装的库: libacl.{a,so}
安装目录: /usr/include/acl 和 /usr/share/doc/acl-2.2.52

简要介绍

chacl

更改文件或目录的访问控制列表

getfacl

获取文件访问控制列表

setacl

设置文件访问控制列表

libacl

包括用于管理访问控制列表的库函数

Host by Unixetc