<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
  "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
  <!ENTITY % general-entities SYSTEM "../../general.ent">
  %general-entities;
]>

<sect1 id="ch-system-psmisc" role="wrap">
  <?dbhtml filename="psmisc.html"?>

  <title>Psmisc-&psmisc-version;</title>

  <indexterm zone="ch-system-psmisc">
    <primary sortas="a-Psmisc">Psmisc</primary>
  </indexterm>

  <sect2 role="package">
    <title/>

    <para>The Psmisc package contains programs for displaying information
    about running processes.</para>

  </sect2>

  <sect2 role="installation">
    <title>Installation of Psmisc</title>

    <para os="a">Prepare Psmisc for compilation:</para>

<screen os="b"><userinput>./configure --prefix=/usr --exec-prefix=""</userinput></screen>

    <variablelist os="c">
      <title>The meaning of the configure option:</title>

      <varlistentry>
        <term><parameter>--exec-prefix=""</parameter></term>
        <listitem>
          <para>This ensures that the Psmisc binaries will install into
          <filename class="directory">/bin</filename> instead of
          <filename class="directory">/usr/bin</filename>. This is the
          correct location according to the FHS, because some of the Psmisc
          binaries are used by the CLFS-Bootscripts package.</para>
        </listitem>
      </varlistentry>
    </variablelist>

    <para os="d">Compile the package:</para>

<screen os="e"><userinput>make</userinput></screen>

    <para os="f">This package does not come with a test suite.</para>

    <para os="g">Install the package:</para>

<screen os="h"><userinput>make install</userinput></screen>

    <para os="i">There is no reason for the <command>pstree</command> and
    <command>pstree.x11</command> programs to reside in <filename
    class="directory">/bin</filename>. Therefore, move them to <filename
    class="directory">/usr/bin</filename>:</para>

<screen os="j"><userinput>mv -v /bin/pstree* /usr/bin</userinput></screen>

    <para os="k">By default, Psmisc's <command>pidof</command> program is not installed.
    This usually is not a problem because it is installed later in the Sysvinit
    package, which provides a better <command>pidof</command> program. If
    Sysvinit will not be used for a particular system, complete the installation
    of Psmisc by creating the following symlink:</para>

<screen os="l" role="nodump"><userinput>ln -sv killall /bin/pidof</userinput></screen>

  </sect2>

  <sect2 id="contents-psmisc" role="content">
    <title>Contents of Psmisc</title>

    <segmentedlist>
      <segtitle>Installed programs</segtitle>

      <seglistitem>
        <seg>fuser, killall, pstree, and pstree.x11 (link to pstree)</seg>
      </seglistitem>
    </segmentedlist>

    <variablelist>
      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
      <?dbfo list-presentation="list"?>
      <?dbhtml list-presentation="table"?>

      <varlistentry id="fuser">
        <term><command>fuser</command></term>
        <listitem>
          <para>Reports the Process IDs (PIDs) of processes that use the given
          files or file systems</para>
          <indexterm zone="ch-system-psmisc fuser">
            <primary sortas="b-fuser">fuser</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="killall">
        <term><command>killall</command></term>
        <listitem>
          <para>Kills processes by name; it sends a signal to all processes
          running any of the given commands</para>
          <indexterm zone="ch-system-psmisc killall">
            <primary sortas="b-killall">killall</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="oldfuser">
        <term><command>oldfuser</command></term>
        <listitem>
          <para>Reports the Process IDs (PIDs) of processes that use the given
          files or file systems</para>
          <indexterm zone="ch-system-psmisc oldfuser">
            <primary sortas="b-oldfuser">oldfuser</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="pstree">
        <term><command>pstree</command></term>
        <listitem>
          <para>Displays running processes as a tree</para>
          <indexterm zone="ch-system-psmisc pstree">
            <primary sortas="b-pstree">pstree</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="pstree.x11">
        <term><command>pstree.x11</command></term>
        <listitem>
          <para>Same as <command>pstree</command>, except that it waits for
          confirmation before exiting</para>
          <indexterm zone="ch-system-psmisc pstree.x11">
            <primary sortas="b-pstree.x11">pstree.x11</primary>
          </indexterm>
        </listitem>
      </varlistentry>

    </variablelist>

  </sect2>

</sect1>
