Man Linux: Main Page and Category List

NAME

       proofd - PROOF (The Parallel ROOT Facility)

DESCRIPTION

       Using  PROOF  (The  Parallel  ROOT  Facility)  one can analyze trees in
       parallel on a cluster of computers. The PROOF system  consists  of  the
       proofd(1) from-end program which is started via inetd(8).

       proofd  takes care of user authentication and overlays itself then with
       the desired version of the proofserv(1) executable.

       The proofserv(1) is a basically the same as the ROOT interactive module
       root(1),  except  that  it  reads its commands from a socket instead of
       from the terminal.

       Since it is a remote server it will not do graphics  and  therefore  is
       not linked with any graphics libraries (Motif, X11, etc.).

SETTING UP PROOF

       Since  you need to handle sensitive system files, you need to have root
       (the user, not the program!) privileges. Also,  it’s  recommended  that
       you  read  the  appropiate  man(1) pages first. These are inetd(8) (the
       internet daemon), sysklogd(8) and syslog(3) (the system logger daemon),
       and init(8) (the SYSV process control initializer).

       In other words:
              Be very VERY carefull when installing proofd
       There, I said it. And ofcourse, no warrenties what so ever.

       1      Make  sure  every  node  has  ROOT  installed.  We’ll assume you
              installed the ROOT applications in <bindir> (e.g. /usr/bin)  and
              the  PROOF  configuration files in files in <proofdir>/etc (e.g.
              /usr/share/root/etc).

       2      The TCP port 1094 was allocated by IANA, (  www.iana.org  ),  to
              rootd, so add to /etc/services the lines:

                proofd  1093/tcp
                rootd   1094/tcp

       3      On each node, add to /etc/inetd.conf the lines:

                proofd stream tcp nowait root <bindir>/proofd proofd <proofdir>/proof
                rootd stream tcp nowait root <bindir>/rootd rootd -i

              You  can substitute the <proofdir> with any directory that holds
              your PROOF configuration, for example /etc/root/proof.  However,
              it should be shared among all nodes in the cluster.

       4      Restart inetd or force it to re-read the config file:

                kill -1 <inetd pid>

              If you use SYSV init(8) scripts, you can probaly just do

                /etc/init.d/inetd restart

              or whatever is appropiate for your system.

       5      On the master node, add to /etc/syslog.conf  the line:

                  local5,local6.debug     <proofdir>/log/proof.log

              and all slave nodes:

                  local5,local6.debug     @<master hostname>

              where  <master hostname> is domain name of the master node.  All
              PROOF syslog messages will be  collected  on  the  master  node.
              Just  make  one  node  in the cluster the master, all others are
              slaves.

       6      On all nodes, change the below lines in /etc/syslog.conf,

                  *.info;mail.none;news.none;authpriv.none  /var/log/messages

              to:

                  *.info;local5,local6,mail.none;news.none;authpriv.none  /var/log/messages

       7      Create an empty <proofdir>/log/proof.log:

                  echo "" > <proofdir>/log/proof.log

       8      Restart syslogd or force it to re-read the config file:

                kill -1 <syslogd pid>.

              If you use SYSV init(8) scripts, you can probaly just do

                /etc/init.d/sysklogd restart

              or whatever is appropiate for your system.

       9      Edit   <proofdir>/etc/proof.conf   to   reflect   your   cluster
              configuration.   See   the  example  proof.conf  file  for  more
              information.

       If you installed ROOT using some precompiled  package  (for  example  a
       Redhat  Linux  or a Debian GNU/Linux package), steps 2 to 4 may already
       be done for you.

       If you’re running Linux, Steps 5 to 7 can be somewhat  automated  using
       the  script  proof-facility  in  <proofdir>  of your distribution. This
       script uses syslog-facility(1), from the Linux syslog(1)  distribution,
       and may run on other platforms as well - but no warrenties mind you!

       Step 9 is completly up to the user.

EXAMPLE

       That’s it. To test PROOF try the following:

          root [1] gROOT->Proof("<master hostname>")
          root [2] gPROOF->Print()
          <shows information on the master and all active slave servers>
          root [3] .q

FILES

       <proofdir>
              The  location  of  your PROOF data. In binary packages, like for
              Redhat  LinuxI  or  Debian  GNU/Linux,  this  will  probably  be
              /usr/share/root/proof.  If you got a binary tar(1)-ball from the
              ROOT website, or a build it yourself without  the  static  paths
              option, then this directory could be ROOTSYS/proof. However, you
              may set it to something else when starting your server.

       <proofdir>/etc
              This directory  holds  all  the  configuration  files  for  your
              cluster(s).

       <proofdir>/etc/<cluster>.conf
              This  is  the  cluster  named  <cluster> configuration file. See
              <proofdir>/etc/<cluster>.conf.sample for an example.

       <proofdir>/etc/motd
              This is Message-Of-The-Day file. See  <proofdir>/etc/motd.sample
              for an example.

       <proofdir>/etc/noproof
              If this file is present, all PROOF services will be diabled. See
              <proofdir>/etc/noproof.sample for an example.

       <proofdir>/etc/proof.conf
              This    is    the      PROOF     configuration     file.     See
              <proofdir>/etc/proof.conf.sample for an example.

       ~/.rootnetrc.conf
              Configuration  file  for  network access. Here you specify login
              names and pass word, so it MUST be read/write-able only  by  the
              user.   See <proofdir>/etc/rootnetrc.conf.sample for an example.

       <proofdir>/log
              This directory holds the log files from the master  and  slaves.
              <proofdir>/log/proof.log Syslog(1) log file for PROOF.

SEE ALSO

       proofserv(1) , root(1) , rootd(1)

       More information can be found at the ROOT website: http://root.cern.ch

ORIGINAL AUTHORS

       The ROOT team (see web page above):
              Rene Brun and Fons Rademakers

COPYRIGHT

       This library is free software; you can redistribute it and/or modify it
       under the terms of the GNU Lesser General Public License  as  published
       by  the Free Software Foundation; either version 2.1 of the License, or
       (at your option) any later version.

       This library is distributed in the hope that it  will  be  useful,  but
       WITHOUT   ANY   WARRANTY;   without   even   the  implied  warranty  of
       MERCHANTABILITY or FITNESS FOR  A  PARTICULAR  PURPOSE.   See  the  GNU
       Lesser General Public License for more details.

       You  should  have  received  a  copy  of  the GNU Lesser General Public
       License along with this library; if not, write  to  the  Free  Software
       Foundation,  Inc.,  51 Franklin St, Fifth Floor, Boston, MA  02110-1301
       USA

AUTHOR

       This  manual  page  was   written   by   Christian   Holm   Christensen
       <cholm@nbi.dk>,  for  the  Debian  GNU/Linux system (but may be used by
       others).