#
# installation instructions
#
# $Id: INSTALL,v 1.10 1998/04/24 04:39:21 jhpb Exp $
#
# $Log: INSTALL,v $
# Revision 1.10  1998/04/24 04:39:21  jhpb
# moved load_unload.sh to WORMDATLIBDIR
#
# Revision 1.9  1998/04/21 22:20:58  jhpb
# build simplification
#
# Revision 1.8  1998/04/19 14:37:45  jhpb
# installation makefile rules simplifications
#
# Revision 1.7  1998/04/19 13:31:11  jhpb
# eliminated use of $(SU) for installs
#
# Revision 1.6  1998/04/18 23:11:13  jhpb
# modifications for linux port
#
# Revision 1.5  1994/12/07 04:32:26  jhpb
# documented recommended tape format
#
# Revision 1.4  1994/12/06  00:56:48  jhpb
# documented configuration files better
#
# Revision 1.3  1994/12/05  03:08:12  jhpb
# added some additional information
#
# Revision 1.2  1994/12/03  16:18:34  jhpb
# fixes to file headers
#
# Revision 1.1  1994/12/03  15:42:58  jhpb
# Initial revision
#

Installation instructions.  Keep in mind that this was originally
written for ESIX SVR4.0.3A, not linux.

1. Unpack the source code somewhere.

2. Install PERL 5, gmake and parseargs, if you don't have them.  The
   paths for the parseargs library and include files are in rules.mk.
   PERL 5 is really only needed for man page generation, PERL 4 will
   probably work otherwise.  I had to patch the useful.h include file
   to get parseargs working properly:

*** /tmp/parseargs/useful.h	Tue Sep 15 22:10:30 1992
--- useful.h	Wed Oct 14 19:48:05 1992
***************
*** 241,246 ****
--- 241,247 ----
  #define BSET(bstr,mask)     (bstr) |= (mask)
  #define BCLEAR(bstr,mask)   (bstr) &= ~(mask)
  
+ #if 0 /* jhpb */
  #ifndef __STRING_H
  # define __STRING_H
     EXTERN  char  *strcat    ARGS(( char *, const char * ));
***************
*** 281,286 ****
--- 282,288 ----
     EXTERN  ARBPTR  memmove   ARGS(( ARBPTR, const ARBPTR, int ));
     EXTERN  ARBPTR  memset    ARGS(( ARBPTR, int, int ));
  #  endif  /* __MEMORY_H */
+ #endif
     
  # else
  #  define memcmp(b1,b2,n)  bcmp(b1,b2,n)

3. Install the glibc header file patches in the PATCHES directory, if
   necessary.

4. Build.

   gmake

5. Install the software.

   # run this as root
   gmake install

6. Print the man pages.  You need the pod2man script from PERL 5 for
   this.  Note that pod2man is supplied with PERL, but is not
   installed anywhere by PERL's makefiles, at least in the older
   versions of PERL.

   gmake printdoc

7. Add mount entries if you want to.  For example:

ESIX /etc/vfstab
-----------
sarto:/tape-export/0	-	/tape/0	nfs	-	no	rsize=8192,wsize=8192,port=1240,bg,hard,intr,timeo=6000
sarto:/tape-export/1	-	/tape/1	nfs	-	no	rsize=8192,wsize=8192,port=1241,bg,hard,intr,timeo=6000

LINUX /etc/fstab
-----------
localhost:/tape-export/0  /tape/0   nfs noauto,bg,hard,intr,timeo=10,retrans=6,retry=2,nfsvers=100,rsize=8192,wsize=8192

   Don't forget to make the /tape-export/* and /tape/* directories if
   you use these example entries.  For example:

drwxr-xr-x   2 root     root         512 Dec  4 22:05 /tape-export/0
drwxr-xr-x   2 root     root         512 Dec  4 22:05 /tape/0

8. Take a look at the WORMDATLIBDIR/load_unload.sh script and make
   sure it does what you want for RAM filesystem load/unload
   operations.  The supplied default script uses gzip and gunzip,
   which you may not have, or may have installed in a different place
   than the shell script expects.

9. Take a look at the ETCDIR/wormdat-security,
   ETCDIR/wormdatcntl-security and ETCDIR/dat-security security
   configuration files. Change them for the security you want.

10. Take a look at the ETCDIR/scsi-config configuration file. Change
   it for your host adaptor and SCSI ID situation.  You may have to
   change libscsi/makedev.cc also and reinstall, if the installed
   device nodes in ETCDIR are not adequate for your setup.

11. Read the BUGS file for a note about a kernel panic you may have
   some trouble with under ESIX SVR4.0.3A.

12. You probably want to start out with the RAM filesystem mode of
   wormdat.  Try a DAT filesystem when you have the RAM filesystem
   working properly.  I suggest you format a compressed DAT tape with
   two partitions and at least 64 megabytes in the secondary partition
   when you start testing the DAT filesystem.

13. Patches for the 2.0.33 linux kernel and for the 2.7f mount program
    are included in the PATCHES directory.  These patches allow
    mounting of NFS servers at non-standard RPC program/version
    numbers.  The sample linux fstab entry above assumes that there is
    a wormdat server running at version number 100.  Version 100 is
    currently the default for wormdat under linux.  The linux port
    currently does not allow setting the NFS version number from the
    command line (it would be easy to do so), so you can only have one
    wormdat server running at a time.
