home *** CD-ROM | disk | FTP | other *** search
/ Black Box 4 / BlackBox.cdr / lan / sossexe.arj / DOC / SOSS.TXT < prev    next >
Text File  |  1991-04-11  |  11KB  |  256 lines

  1.  
  2.                                                                  SOSS(1)
  3.  
  4.  
  5.  
  6. NAME
  7.      soss Son of Stan's Server
  8.  
  9. SYNOPSIS
  10.      soss [-rtv]
  11.  
  12. DESCRIPTION
  13.      SOSS is a file server conforming to SUN Microsystems' NFS protocol
  14.      version 2. It will run on IBM-PC compatibles under Microsoft
  15.      MS-DOS, using any Ethernet interface supported by Clarkson
  16.      University's packet drivers.  Performance and reliability have been
  17.      significantly enhanced over the original SOS released in 1989.
  18.  
  19.      The file "export.us" must exist in the default directory on the
  20.      server.  The format is similar to Sun NFS's "/etc/exports" as
  21.      defined in exports(5), except that directories on the server side
  22.      are specified in MS-DOS format, ie.  "<drive>:<path name>." SOSS
  23.      will parse this file to learn which filesystems on the local
  24.      machine it will accept mount requests for.  Up to 50 individual
  25.      clients may be specified for any exported directory.
  26.  
  27.      SOSS requires the system clock to be set correctly.  The MS-DOS
  28.      timezone environment variable should be set the way it is under
  29.      Unix.  (E.g., for Eastern Time, use SET TZ=EST5EDT or SET TZ=EDT4;
  30.      daylight savings time isn't handled correctly by the Microsoft C
  31.      library linked with this version.) Note that MS-DOS does not
  32.      understand dates prior to January 1, 1980.  If you have a Network
  33.      Time Server established on your network, you should run PC/IP
  34.      SETCLOCK prior to running SOSS.
  35.  
  36.      Before running SOSS, configure your Ethernet interface card and the
  37.      packet driver software.  Using CUSTOM, set correct parameters (IP
  38.      address, name and time server addresses) in NETDEV.SYS, then add
  39.      the line "DEVICE=NETDEV.SYS" to CONFIG.SYS, and reboot your system.
  40.      Run the appropriate packet driver, specifying software interrupt
  41.      vector 0x7e; here is an example:
  42.  
  43.      ni5210 -n 0x7e 5 0x300 0xd000
  44.  
  45.      You can then run NetWare, if desired, and then invoke SOSS.
  46.  
  47.      There should be a capacity for at least fifteen files to be opened
  48.      at a time.  SOSS caches file handles for faster access during
  49.      reads.
  50.  
  51.      File names in filesystems mounted with SOSS are limited to eight
  52.      characters, with a three character extension.  Attempts to create a
  53.      file with a name not matching the above restrictions will result in
  54.      an error message, NFSERR_NAMETOOLONG, unless the truncation option
  55.      is specified.  All file names are mapped to lowercase.
  56.  
  57.      The owner ID of any directory or file in a SOSS filesystem will
  58.      appear to be that of the user accessing it.  Files have three
  59.      possible modes:  regular files, which are global read, write and
  60.      executable, read only, which are global read and executable, and
  61.      subdirectories, which are global read, write and executable.
  62.      Chmod(1) may not work as expected with SOSS files, and chown(1)
  63.      will not work at all.
  64.  
  65.      An SOSS filesystem may be mounted by mount(1).  On the client
  66.      system's mount command line, a filesystem is specifed by the
  67.      sequence "/drive/directory." On the server side, a root directory
  68.      may be exported by using the form "c:\"; a subdirectory may be
  69.      exported using the form "c:\foo".  The rsize and wsize parameters
  70.      must be specified less than or equal to 512 bytes.  An example of a
  71.      typical mount command issued on a client system:
  72.  
  73.      # mount -f NFS,intr,rsize=512,wsize=512 dosbox:/c /usr/sos
  74.  
  75.      If you modify the EXPORT.US file, you should remove the INODE.DMP
  76.      file before restarting the server, and unmount/remount any exported
  77.      filesystems on each client.  In general, if you remove INODE.DMP,
  78.      you should remount the filesystems from the client side, in order
  79.      to get rid of any stale file handles.
  80.  
  81.      One product you may wish to use in conjunction with SOSS, if you
  82.      are using it to export a hard drive physically connected to the
  83.      SOSS server PC, is a disk cache which keeps data blocks in extended
  84.      memory.  This functionality was not added to SOS itself due to the
  85.      low cost of high-quality commercial products like PCKWIK.
  86.  
  87. PREREQUISITES
  88.      The basic hardware and software requirements for SOSS are as
  89.      follows:
  90.  
  91.      1.   The Clarkson University packet drivers, configured for your
  92.           Ethernet board.  (These are available via anonymous ftp on
  93.           sun.soe.clarkson.edu plus other sites which carry SOSS.)
  94.  
  95.      2.   A 286- or 386-based PC.  (It may work with an XT.)
  96.  
  97.      3.   A single Ethernet card which is supported by Clarkson; this
  98.           includes most popular products.
  99.  
  100.      4.   Another system with NFS client support (DOS, Unix, VAX/VMS,
  101.           VxWorks, or whatever) and TCP/IP.
  102.  
  103.      5.   Some free disk space (usually well under 0.5 megabytes) on the
  104.           default disk drive, for maintaining the inode list.
  105.  
  106. OPTIONS
  107.  
  108.      -r   The -r option causes all exported filesystems to be read only.
  109.  
  110.      -t   To suppress filename-too-long errors when a client system
  111.           specifies a filename longer than the eight-point-three
  112.           characters allowable under DOS, use the -t (silently truncate)
  113.           option.
  114.  
  115.      -v   The -v option causes SOSS to announce successful completion of
  116.           each NFS request (verbose mode).  SOSS normally announces only
  117.           errors and mount requests.
  118.  
  119. FILES
  120.      These files should exist in the default directory from which the
  121.      server was started:
  122.  
  123.      export.us
  124.           list of exported filesystems and clients.  If you specify a
  125.           client list, be sure you are running a domain name server and
  126.           that its IP address has been provided in NETDEV.SYS.
  127.  
  128.      inode.dmp
  129.           index node information for crash recovery.
  130.  
  131.      novell.id
  132.           UID mapping for Novell filesystems (not supported).
  133.  
  134.      netdev.sys
  135.           device configuration file for PC/IP, set up for your system
  136.           using custom.exe.  (A device entry for this file must be
  137.           placed in config.sys.)
  138.  
  139. BUGS AND LIMITATIONS
  140.  
  141.      -    Portmapper and mount daemons are incomplete.  See below.
  142.  
  143.      -    The portmapper operates on datagrams.  TCP requests are not
  144.           supported.
  145.  
  146.      -    There is no support for large packets (> 512 bytes).
  147.  
  148.      -    The server crashes as soon as about 7,500 inodes are created.
  149.  
  150.      -    NFS_RENAME cannot rename directories, and cannot move files
  151.           from one directory to another.
  152.  
  153.      -    Inodes are not recycled as files are deleted.
  154.  
  155.      -    A filename beginning with dot is unsupported, and the 'rm'
  156.           command under AIX creates such files.
  157.  
  158.      -    The server requires a dedicated PC and does not use extended
  159.           memory.
  160.  
  161. DEBUGGING
  162.      A set of debugging macros is available to help you in debugging
  163.      run-time problems or to provide useful diagnostics when modifying
  164.      SOSS source code.  This feature uses two environment variables:
  165.      NFSDEBUG and DEBUGFILE.  By default, debugging is disabled; you can
  166.      selectively enable trace messages by setting NFSDEBUG to a list of
  167.      flags as follows:
  168.  
  169.      *rpctrace - RPC-level messages
  170.      mountd - mount requests
  171.      nfserr - error conditions for certain requests
  172.      nfsdebug - miscellaneous debugging information
  173.      nfsdisp - main NFS dispatcher (like SOSS -v)
  174.      nfslookup - file lookups
  175.      nfsread - file reads
  176.      nfswrite - file writes
  177.      *nfstime - timing information
  178.      *inode - inode information
  179.  
  180.      Asterisked items are not used in the released version.  Debugging
  181.      output goes to the console display unless DEBUGFILE is set to a
  182.      file or device name.  If you want all trace messages, set
  183.      NFSDEBUG=all; if you want all but a few, you can use negated flags,
  184.      as in "set NFSDEBUG=all;-nfsread;-nfswrite".
  185.  
  186. REQUESTS
  187.  
  188.      "Port Mapper Requests"
  189.      Only one call is supported:  PMAPPROC_GETPORT.  The port mapper
  190.      knows of only the NFS and mount daemon ports.  In version two of
  191.      the NFS protocol, NFS port is bound to 2049.  This is a bug in the
  192.      NFS protocol which Sun Microsystem claims it will fix in the near
  193.      future.
  194.  
  195.      "Mount Daemon Requests"
  196.      Three calls are supported:  MOUNTPROC_MOUNT, MOUNTPROC_UMOUNT, and
  197.      MOUNTPROC_EXPORT.  These reply to mount and unmount requests for
  198.      specified filesystems.  The MOUNTPROC_EXPORT function provides a
  199.      list of exported file systems (in Unix-style syntax), but does not
  200.      include the list of authorized clients for each.
  201.  
  202.      "NFS Server Requests"
  203.      SOSS supports the whole range of valid requests for version two of
  204.      the NFS protocol, except NFSPROC_READLINK, NFSPROC_LINK and
  205.      NFSPROC_SYMLINK.  MS-DOS does not support links.  This is a list of
  206.      requests:
  207.  
  208.      Procedure 0: NFSPROC_NULL /* for server response and timing */
  209.      Procedure 1: NFSPROC_GETATTR /* get file attributes */
  210.      Procedure 2: NFSPROC_SETATTR /* set file attributes */
  211.      Procedure 3: NFSPROC_ROOT /* obsolete em not supported */
  212.      Procedure 4: NFSPROC_LOOKUP /* lookup file in directory */
  213.      Procedure 5: NFSPROC_READLINK /* not supported */
  214.      Procedure 6: NFSPROC_READ /* read from file */
  215.      Procedure 7: NFSPROC_WRITECACHE /* obsolete em not supported */
  216.      Procedure 8: NFSPROC_WRITE /* write to file */
  217.      Procedure 9: NFSPROC_CREATE /* create file */
  218.      Procedure 10:  NFSPROC_REMOVE /* remove file */
  219.      Procedure 11:  NFSPROC_RENAME /* rename a file */
  220.      Procedure 12:  NFSPROC_LINK /* not supported */
  221.      Procedure 13:  NFSPROC_SYMLINK /* not supported */
  222.      Procedure 14:  NFSPROC_MKDIR /* make directory */
  223.      Procedure 15:  NFSPROC_RMDIR /* remove directory */
  224.      Procedure 16:  NFSPROC_READDIR /* read directory */
  225.      Procedure 17:  NFSPROC_STATFS /* status of filesystem */
  226.  
  227.  
  228. COMMENTS
  229.      Comments and bugs should be addressed to:
  230.      rbraun@spdcc.com, stan@cs.uiuc.edu, or stan@lbl-csam.arpa
  231.  
  232. AUTHORS
  233.      See-Mong Tan, Harvard Holmes, Craig Eades, Rich Braun
  234.  
  235. SEE ALSO
  236.      d2x(1), x2d(1), nfs(4p), nfsd(8), mount(1), mount(8), umount(1),
  237.      exports(5)
  238.  
  239.      "A Low-Cost Unix/DOS Network Solution for Software Engineering",
  240.      Richard Braun (rbraun@spdcc.com), Kronos, Inc., April 1991.
  241.  
  242.      "Network File System Protocol Specification", RFC-1094, Bill
  243.      Nowicki (nowicki@sun.com), Sun Microsystems Inc., March 1989.
  244.  
  245.      "Networking on the Sun Workstation", Sun Part No.  800-1324-03.
  246.  
  247.      "Packet Drivers Made Simple", Joe R. Doupnik (jrd@cc.usu.edu), Utah
  248.      State University, January 1990.
  249.  
  250.      "PC/IP User's Guide", Jerome H. Saltzer and John L. Romkey,
  251.      Massachusetts Institute of Technology Laboratory for Computer
  252.      Science, March 1986.
  253.  
  254.      "User Documentation for the Packet Driver Collection", Russ Nelson,
  255.      Clarkson University (nelson@clutx.clarkson.edu).
  256.