glfs/general/genlib/fam.xml
Randy McMurchy 6732c09460 Updated all the XML files (and the one stylesheet) to use the 4.5 version of DocBook XML DTD
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@6716 af4574ff-66df-0310-9fd7-8a98e5e911e0
2007-04-04 19:42:53 +00:00

259 lines
8.4 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!-- Inserted as a reminder to do this. The mention of a test suite
is usually right before the root user installation commands. Please
delete these 12 (including one blank) lines after you are done.-->
<!-- Use one of the two mentions below about a test suite,
delete the line that is not applicable. Of course, if the
test suite uses syntax other than "make check", revise the
line to reflect the actual syntax to run the test suite -->
<!-- <para>This package does not come with a test suite.</para> -->
<!-- <para>To test the results, issue: <command>make check</command>.</para> -->
<!ENTITY fam-download-http "http://gd.tuwien.ac.at/opsys/linux/gentoo/distfiles/fam-&fam-version;.tar.gz">
<!ENTITY fam-download-ftp "ftp://oss.sgi.com/projects/fam/download/stable/fam-&fam-version;.tar.gz">
<!ENTITY fam-md5sum "1bf3ae6c0c58d3201afc97c6a4834e39">
<!ENTITY fam-size "301 KB">
<!ENTITY fam-buildsize "7.7 MB">
<!ENTITY fam-time "0.26 SBU">
]>
<sect1 id="fam" xreflabel="FAM-&fam-version;">
<?dbhtml filename="fam.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>FAM-&fam-version;</title>
<indexterm zone="fam">
<primary sortas="a-FAM">FAM</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to FAM</title>
<para>The <application>FAM</application> package contains a
File Alteration Monitor which is useful for notifying applications of
changes to the file system.</para>
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>Download (HTTP): <ulink url="&fam-download-http;"/></para>
</listitem>
<listitem>
<para>Download (FTP): <ulink url="&fam-download-ftp;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum: &fam-md5sum;</para>
</listitem>
<listitem>
<para>Download size: &fam-size;</para>
</listitem>
<listitem>
<para>Estimated disk space required: &fam-buildsize;</para>
</listitem>
<listitem>
<para>Estimated build time: &fam-time;</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing='compact'>
<listitem>
<para>Dnotify patch (Recommended):
<ulink url="&patch-root;/fam-&fam-version;-dnotify-1.patch"/></para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">FAM Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required"><xref linkend="portmap"/></para>
<para condition="html" role="usernotes">User Notes:
<ulink url="&blfs-wiki;/fam"/></para>
</sect2>
<sect2 role="installation">
<title>Installation of FAM</title>
<para>Install <application>FAM</application> by running the
following commands:</para>
<screen><userinput>patch -Np1 -i ../fam-&fam-version;-dnotify-1.patch &amp;&amp;
chmod -v 755 configure &amp;&amp;
autoreconf -f -i &amp;&amp;
./configure --prefix=/usr --sysconfdir=/etc &amp;&amp;
make</userinput></screen>
<para>Now, as the <systemitem class="username">root</systemitem> user:</para>
<screen role="root"><userinput>make install</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para><command>patch -Np1 -i ../fam-&fam-version;-dnotify-1.patch</command>:
This patch enables <application>FAM</application> to use
the Linux kernel dnotify mechanism to inform the calling process of
file modifications, rather than polling the file system for
modifications.</para>
<para><command>chmod -v 755 configure</command>: <command>configure</command> is
set to read-only and <command>autoreconf</command> will fail if the
permissions aren't changed.</para>
<para><command>autoreconf -f -i</command>: The autotools need rebuilding
because the dnotify patch affects <filename>configure.ac</filename> and
<filename>Makefile.am</filename>.</para>
</sect2>
<sect2 role="configuration">
<title>Configuring FAM</title>
<sect3 id='fam-config'>
<title>Config Files</title>
<para><filename>/etc/rpc</filename>,
<filename>/etc/fam.conf</filename>,
<filename>/etc/inetd.conf</filename> or
<filename>/etc/xinetd.conf</filename> or
<filename>/etc/xinetd.d/fam</filename></para>
<indexterm zone="fam fam-config">
<primary sortas="e-etc-rpc">/etc/rpc</primary>
</indexterm>
<indexterm zone="fam fam-config">
<primary sortas="e-etc-fam.conf">/etc/fam.conf</primary>
</indexterm>
<indexterm zone="fam fam-config">
<primary sortas="e-etc-inetd.conf">/etc/inetd.conf</primary>
</indexterm>
<indexterm zone="fam fam-config">
<primary sortas="e-etc-xinetd.conf">/etc/xinetd.conf</primary>
</indexterm>
<indexterm zone="fam fam-config">
<primary sortas="e-etc-xinetd.d-sgi_fam">/etc/xinetd.d/sgi_fam</primary>
</indexterm>
</sect3>
<sect3>
<title>Configuration Information</title>
<para>Configuring the File Alteration Monitor. Perform the following
instructions as the <systemitem class='username'>root</systemitem>
user.</para>
<para>If you use <command>inetd</command>, add the
<application>FAM</application> entry to
<filename>/etc/inetd.conf</filename> with the following command:</para>
<screen role="root"><userinput>echo "sgi_fam/1-2 stream rpc/tcp wait root /usr/sbin/famd fam" \
&gt;&gt; /etc/inetd.conf</userinput></screen>
<para>If you use <command>xinetd</command>, the following command will
create the <application>FAM</application> file as
<filename>/etc/xinetd.d/sgi_fam</filename> (be sure the
<systemitem class="groupname">nogroup</systemitem> group exists):</para>
<screen role="root"><userinput>cat &gt;&gt; /etc/xinetd.d/sgi_fam &lt;&lt; "EOF"
<literal># Begin /etc/xinetd.d/sgi_fam
# description: FAM - file alteration monitor
service sgi_fam
{
type = RPC UNLISTED
socket_type = stream
user = root
group = nogroup
server = /usr/sbin/famd
wait = yes
protocol = tcp
rpc_version = 2
rpc_number = 391002
}
# End /etc/xinetd.d/sgi_fam</literal>
EOF</userinput></screen>
<para id='fam-init'>If you do not have an <command>inetd</command> daemon
installed and have no wish to install one, you can also start
<command>famd</command> during system startup by installing the
<filename>/etc/rc.d/init.d/fam</filename> init script included in the
<xref linkend="bootscripts"/> package.</para>
<screen role="root"><userinput>make install-fam</userinput></screen>
<indexterm zone="fam fam-init">
<primary sortas="f-fam">fam</primary>
</indexterm>
</sect3>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Program</segtitle>
<segtitle>Installed Library</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>famd</seg>
<seg>libfam.{so,a}</seg>
<seg>None</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="famd">
<term><command>famd</command></term>
<listitem>
<para>is the file alteration monitor daemon.</para>
<indexterm zone="fam famd">
<primary sortas="b-famd">famd</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libfam">
<term><filename class='libraryfile'>libfam.{so,a}</filename></term>
<listitem>
<para>contains functions that support the file allocation monitor.</para>
<indexterm zone="fam libfam">
<primary sortas="c-libfam">libfam.{so,a}</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>