Instructions for installing the Prospero server at an archive site

This distribution includes the source code for the Prospero server and
client.

In order to install the server you will need a user-id to run it
under.  I would suggest creating a new account with the name "pfs" or
"prospero" (but this is not required).  The account does not need to
be loginable.  The directory associated with this user-id will be used
to store shadow information.

You may also want to add the following entry to /etc/services.  It is
not absolutely necessary to do so since the server will default to the
correct port if this entry is missing.

dirsrv		1525/udp	# The Prospero directory service

To tailor the server to your systems's configuration, edit the file
include/psite.h (this has changed slightly since the last release).
The definitions that are of particular importance for this
distribution are: P_BINARIES, PSRV_HOSTNAME, P_USER_ID, P_GROUP_ID,
PSRV_ROOT, P_FSHADOW, P_FSTORAGE, AFTPDIRECTORY, and PFS_LOGFILE.  If
you are using the psite.h file from a release earlier than Alpha.4.7,
remove the definition of INITIAL_LOG_VECTOR.  That definition has been
moved to plog.h and has changed significantly.

The include file has two sections.  The first defines information
about the system on which the server and applications will run.  The
second includes information about the Prospero site.  This
distribution is intended to be configured as (a remote) part of the
CS.WASHINGTON.EDU site.  Thus, the second section should be left as it
is.  If you wish to run your own Prospero site, you should contact
info-prospero@cs.washington.edu to obtain the proper distribution.

Next, edit pmachine.h.  This file defines some of the machine and OS
specific parameters needed by Prospero.  Then edit the top level
makefile.  Set INSTDIR to the directory in which the binaries are to
be installed.  ONWNER and GROUP should be set to the intended owner
and group for the Pospero binaries.  TOPDIR is the name of the
directory that will contain the shadow subdirectory.  (i.e. if
P_FSHADOW is /usr/pfs/shadow, then TOPDIR should be /usr/pfs).  

If you will be building the PFS compatibility library (which redefines
open and several other library functions), some systems will require a
change to the SC_REDEF variable definition in app/Makefile.  If you do
not want to build the compatibility library, replace lib/pcompat/Makefile
with Makefile.nopcompat, replace app/Makefile with Makefile.nopcompat,
and make sure the P_NO_PCOMPAT is defined in include/psite.h.

Next, move back to the top level directory for the distribution and
type 'make', and once the distribution has been successfully built
type 'make install'.  The program pstart figures out the appropriate
arguments for the server, sets its UID to that under which the server
is to run, and starts dirsrv.  By making pstart setuid and setgid to
the ID under which the server will run, any user will be able to
start/restart the server.  You should start the server whenever your
system is booted.  Pstart may be called from the system startup.  It
will immediately set its user and group IDs to that for the server.

The directory app contains the code for versions of cat and ls which
may be linked with the compatability library.  Other programs may also
be linked with the compatability library, but filenames hardcoded into
those programs (or the libraries they call) might be resolved using
Prospero, causing unexpected behavior if those names do not identify
the same files in the active virtual system.

The directory "doc" contains the source to a manual on using the
Prospero file system.  The file "getting-started.txt" in that directory
contains enough information to get started.  The file ".virt-sys" contains
a reference to a guest virtual system at the University of Washington.
This may be copied to your home directory.  If you would like your own
virtual system contact pfs-administrator@cs.washington.edu.

Bug reports should be sent to:

  bug-prospero@cs.washington.edu

Requests or queries about the release should be sent to:

  info-prospero@cs.washington.edu

Requests for creation of virtual system stored at the University of
Washington site, or requests to establish one's own Prospero site
should be sent to:

  pfs-administrator@cs.washington.edu

A public mailing list has been set up for discussion of Prospero.
Among other things, this list can be used to announce directories of
information that users have created and wish to share.  The name of
the list is:

  prospero@cs.washington.edu

Requests for addition or deletions should be sent to:

  prospero-request@cs.washington.edu

