Files
master/chapter06/acl.html
2015-05-23 18:50:06 +08:00

256 lines
8.4 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content=
"application/xhtml+xml; charset=utf-8" />
<title>
6.22.&nbsp;Acl-2.2.52
</title>
<link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1" />
<link rel="stylesheet" href="../stylesheets/lfs-print.css" type="text/css"
media="print" />
</head>
<body class="lfs" id="lfs-7.7-systemd">
<div class="navheader">
<h4>
Linux From Scratch - Version 7.7-systemd
</h4>
<h3>
第六章&nbsp;安装基本的系统软件
</h3>
<ul>
<li class="prev">
<a accesskey="p" href="attr.html" title="Attr-2.4.47">上一页</a>
<p>
Attr-2.4.47
</p>
</li>
<li class="next">
<a accesskey="n" href="libcap.html" title="Libcap-2.24">下一页</a>
<p>
Libcap-2.24
</p>
</li>
<li class="up">
<a accesskey="u" href="chapter06.html" title=
"第六章&nbsp;安装基本的系统软件">返回</a>
</li>
<li class="home">
<a accesskey="h" href="../index.html" title=
"Linux From Scratch - Version 7.7-systemd">主页</a>
</li>
</ul>
</div>
<div class="wrap" lang="en" xml:lang="en">
<h1 class="sect1">
<a id="ch-system-acl" name="ch-system-acl"></a>6.22. Acl-2.2.52
</h1>
<div class="package" lang="en" xml:lang="en">
<p>
Acl 软件包包含管理访问控制列表的工具,访问控制列表用于
定义文件和目录更细粒度的自主访问权限。
</p>
<div class="segmentedlist">
<div class="seglistitem">
<div class="seg">
<strong class="segtitle">大概编译时间:</strong>
<span class="segbody">0.1 SBU</span>
</div>
<div class="seg">
<strong class="segtitle">需要磁盘空间:</strong>
<span class="segbody">7.7 MB</span>
</div>
</div>
</div>
</div>
<div class="installation" lang="en" xml:lang="en">
<h2 class="sect2">
6.22.1. 安装 Acl
</h2>
<p>
修改文件目录,使它成为版本目录:
</p>
<pre class="userinput">
<kbd class=
"command">sed -i -e 's|/@pkg_name@|&amp;-@pkg_version@|' include/builddefs.in</kbd>
</pre>
<p>
修复一些损坏的测试:
</p>
<pre class="userinput">
<kbd class=
"command">sed -i "s:| sed.*::g" test/{sbits-restore,cp,misc}.test</kbd>
</pre>
<p>
另外,修复一个超长组名称时会使 <span class=
"command"><strong>getfacl -e</strong></span> 出现段错误的 bug
</p>
<pre class="userinput">
<kbd class=
"command">sed -i -e "/TABS-1;/a if (x &gt; (TABS-1)) x = (TABS-1);" \
libacl/__acl_to_any_text.c</kbd>
</pre>
<p>
准备编译 Acl
</p>
<pre class="userinput">
<kbd class="command">./configure --prefix=/usr --libexecdir=/usr/lib</kbd>
</pre>
<p>
编译软件包:
</p>
<pre class="userinput">
<kbd class="command">make</kbd>
</pre>
<p>
Acl 测试需要在用与 Acl 库一起构建 <span class="application">Coreutils</span>
后支持访问控制的文件系统上进行。如果需要的话,可以在本章后面构建完<span class=
"application">Coreutils</span> 之后回到这个软件包运行 <span class="command"><strong>make -j1
tests</strong></span> 进行测试。
</p>
<p>
安装软件包:
</p>
<pre class="userinput">
<kbd class="command">make install install-dev install-lib
chmod -v 755 /usr/lib/libacl.so</kbd>
</pre>
<p>
需要移动共享库到<code class=
"filename">/lib</code>,因此需要重建 <code class=
"filename">/usr/lib</code> 中的 <code class=
"filename">.so</code> 文件:
</p>
<pre class="userinput">
<kbd class="command">mv -v /usr/lib/libacl.so.* /lib
ln -sfv ../../lib/$(readlink /usr/lib/libacl.so) /usr/lib/libacl.so</kbd>
</pre>
</div>
<div class="content" lang="en" xml:lang="en">
<h2 class="sect2">
<a id="contents-acl" name="contents-acl"></a>6.22.2. Acl 的内容
</h2>
<div class="segmentedlist">
<div class="seglistitem">
<div class="seg">
<strong class="segtitle">安装的程序:</strong>
<span class="segbody">chacl, getfacl, 以及 setacl</span>
</div>
<div class="seg">
<strong class="segtitle">安装的库:</strong>
<span class="segbody">libacl.{a,so}</span>
</div>
<div class="seg">
<strong class="segtitle">安装目录:</strong>
<span class="segbody">/usr/include/acl 以及
/usr/share/doc/acl-2.2.52</span>
</div>
</div>
</div>
<div class="variablelist">
<h3>
简要介绍
</h3>
<table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top" />
<col />
</colgroup>
<tbody>
<tr>
<td>
<p>
<a id="chacl" name="chacl"></a><span class=
"term"><span class=
"command"><strong>chacl</strong></span></span>
</p>
</td>
<td>
<p>
更改文件或目录的访问控制列表
</p>
</td>
</tr>
<tr>
<td>
<p>
<a id="getfacl" name="getfacl"></a><span class=
"term"><span class=
"command"><strong>getfacl</strong></span></span>
</p>
</td>
<td>
<p>
获取文件访问控制列表
</p>
</td>
</tr>
<tr>
<td>
<p>
<a id="setacl" name="setacl"></a><span class=
"term"><span class=
"command"><strong>setacl</strong></span></span>
</p>
</td>
<td>
<p>
设置文件访问控制列表
</p>
</td>
</tr>
<tr>
<td>
<p>
<a id="libacl" name="libacl"></a><span class=
"term"><code class="filename">libacl</code></span>
</p>
</td>
<td>
<p>
包括用于管理访问控制列表的库函数
</p>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="navfooter">
<div class="book">
<div class="titlepage">
<div class="author">
<span class="firstname">翻译团队:<a href="http://lctt.github.io/" target="_blank">LCTT</a></span>
<span class="surname">译者/校对:<a href="http://github.com/ictlyh" target="_blank">ictlyh</a>,</span>
</div>
</div>
</div>
<ul>
<li class="prev">
<a accesskey="p" href="attr.html" title="Attr-2.4.47">上一页</a>
<p>
Attr-2.4.47
</p>
</li>
<li class="next">
<a accesskey="n" href="libcap.html" title="Libcap-2.24">下一页</a>
<p>
Libcap-2.24
</p>
</li>
<li class="up">
<a accesskey="u" href="chapter06.html" title=
"第六章&nbsp;安装基本的系统软件">返回</a>
</li>
<li class="home">
<a accesskey="h" href="../index.html" title=
"Linux From Scratch - Version 7.7-systemd">主页</a>
</li>
</ul>
</div>
</body>
</html>