Apply a change to allow Perl to build correctly when
[linux_from_scratch.git] / chapter06 / acl.xml
blobcb5be400efd8ba01e8e71a4b4a9b15ce43d05e98
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4   <!ENTITY % general-entities SYSTEM "../general.ent">
5   %general-entities;
6 ]>
8 <sect1 id="ch-system-acl" role="wrap">
9   <?dbhtml filename="acl.html"?>
11   <sect1info condition="script">
12     <productname>acl</productname>
13     <productnumber>&acl-version;</productnumber>
14     <address>&acl-url;</address>
15   </sect1info>
17   <title>Acl-&acl-version;</title>
19   <indexterm zone="ch-system-acl">
20     <primary sortas="a-Acl">Acl</primary>
21   </indexterm>
23   <sect2 role="package">
24     <title/>
26     <para>The Acl package contains utilities to administer Access Control Lists,
27     which are used to define more fine-grained discretionary access rights for
28     files and directories.</para>
30     <segmentedlist>
31       <segtitle>&buildtime;</segtitle>
32       <segtitle>&diskspace;</segtitle>
34       <seglistitem>
35         <seg>&acl-ch6-sbu;</seg>
36         <seg>&acl-ch6-du;</seg>
37       </seglistitem>
38     </segmentedlist>
40   </sect2>
42   <sect2 role="installation">
43     <title>Installation of Acl</title>
45     <para>Prepare Acl for compilation:</para>
47 <screen revision="sysv"><userinput remap="configure">./configure --prefix=/usr         \
48             --bindir=/bin         \
49             --disable-static      \
50             --libexecdir=/usr/lib \
51             --docdir=/usr/share/doc/acl-&acl-version;</userinput></screen>
53 <screen revision="systemd"><userinput remap="configure">./configure --prefix=/usr         \
54             --disable-static      \
55             --libexecdir=/usr/lib \
56             --docdir=/usr/share/doc/acl-&acl-version;</userinput></screen>
58     <para>Compile the package:</para>
60 <screen><userinput remap="make">make</userinput></screen>
62     <para>The Acl tests need to be run on a filesystem that supports access
63     controls after <application>Coreutils</application> has been built with the
64     Acl libraries.  If desired, return to this package and run <command>make
65     check</command> after <application>Coreutils</application> has been built
66     later in this chapter.</para>
68     <para>Install the package:</para>
70 <screen><userinput remap="install">make install</userinput></screen>
72     <para>The shared library needs to be moved to
73     <filename class="directory">/lib</filename>, and as a result the
74     <filename class="extension">.so</filename> file in
75     <filename class="directory">/usr/lib</filename> will need to be recreated:</para>
77 <screen><userinput remap="install">mv -v /usr/lib/libacl.so.* /lib
78 ln -sfv ../../lib/$(readlink /usr/lib/libacl.so) /usr/lib/libacl.so</userinput></screen>
80   </sect2>
82   <sect2 id="contents-acl" role="content">
83     <title>Contents of Acl</title>
85     <segmentedlist>
86       <segtitle>Installed programs</segtitle>
87       <segtitle>Installed library</segtitle>
88       <segtitle>Installed directories</segtitle>
90       <seglistitem>
91         <seg>chacl, getfacl, and setfacl</seg>
92         <seg>libacl.so</seg>
93         <seg>/usr/include/acl and /usr/share/doc/acl-&acl-version;</seg>
94       </seglistitem>
95     </segmentedlist>
97     <variablelist>
98       <bridgehead renderas="sect3">Short Descriptions</bridgehead>
99       <?dbfo list-presentation="list"?>
100       <?dbhtml list-presentation="table"?>
102       <varlistentry id="chacl">
103         <term><command>chacl</command></term>
104         <listitem>
105           <para>Changes the access control list of a file
106           or directory</para>
107           <indexterm zone="ch-system-acl chacl">
108             <primary sortas="b-chacl">chacl</primary>
109           </indexterm>
110         </listitem>
111       </varlistentry>
113       <varlistentry id="getfacl">
114         <term><command>getfacl</command></term>
115         <listitem>
116           <para>Gets file access control lists</para>
117           <indexterm zone="ch-system-acl getfacl">
118             <primary sortas="b-getfacl">getfacl</primary>
119           </indexterm>
120         </listitem>
121       </varlistentry>
123       <varlistentry id="setfacl">
124         <term><command>setfacl</command></term>
125         <listitem>
126           <para>Sets file access control lists</para>
127           <indexterm zone="ch-system-acl setfacl">
128             <primary sortas="b-setfacl">setfacl</primary>
129           </indexterm>
130         </listitem>
131       </varlistentry>
133       <varlistentry id="libacl">
134         <term><filename class="libraryfile">libacl</filename></term>
135         <listitem>
136           <para>Contains the  library functions for manipulating Access Control Lists</para>
137           <indexterm zone="ch-system-acl libacl">
138             <primary sortas="c-libacl">libacl</primary>
139           </indexterm>
140         </listitem>
141       </varlistentry>
143     </variablelist>
145   </sect2>
147 </sect1>