home *** CD-ROM | disk | FTP | other *** search
-
-
- Installation guide for LISTSERV for UNIX(R)
- -------------------------------------------
- Copyright L-Soft International, 1994
- Last update: 31 Jul 94
-
-
- *************************************************************************
- *********** Condensed Summary of Installation Procedure ***********
- *************************************************************************
- * *
- * 1. Create the listserv account *
- * 2. Uncompress and un-tar the archive files *
- * 3. Customize the Makefile *
- * 4. Enter 'make mailer' *
- * 5. Enter 'make server' *
- * 6. Enter 'make lcmd' *
- * 7. Enter 'make install' *
- * 8. Customize the "go" shell script *
- * 9. Enter 'make aliases' or update sendmail manually *
- * 10. Make license-key information available to your server *
- * 11. Start LISTSERV! *
- * 12. Subscribe to the LSTSRV-E mailing list *
- * 13. Make your server known to the other LISTSERV's *
- * *
- *************************************************************************
-
- ************
- * Overview *
- ************
-
- If you're very familiar with software installations on your system and
- would prefer terse, matter of fact hints rather than complete
- instructions, skip to the section entitled "The Bare Facts About
- Installing LISTSERV" at the end of this document.
-
- LISTSERV for UNIX(R) is distributed as two compressed "tar" archive
- files. The installation guide, which is the file you are currently
- reading, is also available independently of the archives. One of the tar
- files contains data files common to LISTSERV on all UNIX(R) platforms,
- and the other contains the compiled version of the LISTSERV server. In
- order to simplify the process of removing extraneous files created during
- the installation procedure, you can copy the tar files to a scratch
- directory, install LISTSERV, and then "rm -fr /tmp/scratch" (or
- whatever you name the staging area).
-
- The installation of LISTSERV consists of the following steps,
-
- - creating a "listserv" username,
-
- - extracting the files in the two archive files,
-
- - deciding what directories you want used for incoming mail, as well as
- for the LISTSERV program and data files,
-
- - running "make" to create the LISTSERV sendmail interface, command line
- interface, and LISTSERV server programs,
-
- - running "make install" to create the necessary directories, and copy
- the programs generated in the previous "make" to the proper places,
-
- - modifying the "go.user" shell script to accurately describe your
- system,
-
- - appending entries to your /etc/aliases file to handle mail sent to your
- LISTSERV username, and direct your sendmail daemon to use the new
- aliases,
-
- - creating a "license.merge" file to make license key information
- available to your server,
-
- - subscribing to the LSTSRV-E forum to join others in discussing
- experiences with the evaluation copies of LISTSERV,
-
- - and finally, fill out and return (via e-mail) information about your
- LISTSERV so that other LISTSERV's around the Internet will know about
- your server.
-
- All of these steps are described in greater detail in the sections below.
- They should be performed in the order they are presented since some steps
- rely on the results of earlier steps. Once you've finished the above
- steps, you will be able to start your LISTSERV and verify that it's
- working. You'll then be ready to create mailing lists and start using
- your LISTSERV.
-
- ********************************
- * Usernames needed by LISTSERV *
- ********************************
-
- LISTSERV requires exclusive access to the mail sent to one username.
- Unless you have a very good reason to do otherwise, the username
- "listserv" should be used for that purpose. Many people around the world
- are already familiar with LISTSERV, and will assume that mail sent to
- <listserv@your.host.name> will reach the server. The LISTSERV account is
- just an ordinary user, it doesn't need privileges, doesn't require access
- to restricted directories, and it doesn't need to have any particular UID
- or GID.
-
- **********************************************************
- * Extracting installation materials from the "tar" files *
- **********************************************************
-
- The two archive files you receive will be called common.tar.Z and either
- AIX.tar.Z, or SunOS.tar.Z, or ULTRIX.tar.Z, etc... depending on the
- version of UNIX(R) you are using. The filename is taken from the string
- returned by the "uname" command on each UNIX(R) platform. Please note
- that some FTP sites may change the name of the files slightly to adhere
- to system specific naming conventions. If you're used to dealing with
- compressed tar files already, then just extract the contents using
- whatever commands you prefer. If you'd like the sample commands listed
- below to work as shown, rename the files you received to common.tar.Z and
- `uname`.tar.Z before continuing. For example, if the system specific
- file you received is called aix.tar-z, you would enter the command
- mv aix.tar-z `uname`.tar.Z. Copy or move the two files to a scratch
- directory first. (The advantage of using a work directory for the
- installation is that you can easily clean up afterwards.) Once the files
- have been copied, "cd" to that directory and enter, uncompress *.tar.Z
- to restore them to their original state. Then enter, tar xf common.tar
- and tar xf `uname`.tar to unbundle the programs, data files, etc...
- needed to install LISTSERV. Afterwards you should find the following
- files have been created in your current directory,
-
- lsv.o Makefile go go.sys go.user.sample u-install.memo
- lsv_amin.c lcmd.c
-
- and the ./home directory will contain the following files.
-
- bitearn.nodes listall.refcard listmast.memo peers.names
- country.file listfile.memo listownr.memo service.names
- default.mailtpl listjob.memo listpres.memo stdcmd.file
- errfac.file listkeyw.memo listserv.memo sysff.file
- intpeers.names listkwd.file lsvhelp.file system.catalog
- linkswt2.file listlpun.memo lsvinfo.file
-
- Sample commands for this step:
- mkdir /tmp/scratch
- cp common.tar.Z `uname`.tar.Z /tmp/scratch
- cd /tmp/scratch
- uncompress *.Z
- tar xf common.tar
- tar xf `uname`.tar
-
- ***************************************
- * Deciding where LISTSERV will reside *
- ***************************************
-
- Before you can continue with the installation of LISTSERV, you need to
- choose where you want several things to be placed. The installation
- process needs the full path names of three directories. All of them are
- defined by macros in the Makefile (which was extracted from the
- common.tar archive in the preceding step).
-
- The directory where the mail interface and command line interface
- programs should be installed is defined by the BINDIR macro. The Makefile
- is distributed with BINDIR set to /usr/local/bin by default. Whether you
- choose to use the default directory, or redefine it, the installation
- procedure assumes the directory already exists. If you choose a new
- directory, you will need to create it before running the final
- "make install". This directory is only referenced during the installation
- of the mail interface. Neither the mail interface program, the command
- line interface utility, nor the LISTSERV server process requires write
- access to this directory afterwards.
-
- Incoming mail is written to the directory defined by the LSVSPOOL macro
- in the Makefile. The default value is /var/spool/listserv. Unlike the
- BINDIR directory, the LISTSERV spool directory is assumed to be a new
- directory. In fact, no other users or daemon processes should write to
- this directory since LISTSERV scans this directory for incoming mail. If
- the directory doesn't exist when the "make install" command is
- executed, it will be created, and the LISTSERV account will be made the
- owner.
-
- The LISTSERV executable, as well as associated directories and data files
- will be installed in the directory pointed to by the LSVROOT macro in the
- Makefile. Any directory can be used, so long as LISTSERV has write access
- to it. When the final "make install" is run, the LSVSPOOL directory, and
- several subdirectories, will be created if necessary. The LISTSERV
- account will be made the owner of those directories. The Makefile is
- distributed with the LSVROOT macro is set to /home/listserv/lsv. If you
- choose the default setting, the directories /home/listserv/lsv,
- /home/listserv/lsv/home, and /home/listserv/tmp will be created as a
- result.
-
- To use different directories, edit the Makefile and change the BINDIR,
- LSVSPOOL, and/or LSVROOT macros.
-
- Sample commands for this step:
- vi Makefile
-
- ********************************************************
- * Building the interface utilities and LISTSERV server *
- ********************************************************
-
- The program that handles incoming mail is called lsv_amin and is
- distributed in source form. The file lsv_amin.c is a standalone program
- that can be modified to suit your local mail system as needed. It should
- work as distributed with unmodified Sendmail systems. If you are running
- ZMAILER or PP instead of Sendmail, please contact L-Soft for installation
- instructions. To compile lsv_amin, first check the CC and CFLAGS macros
- in the Makefile to make certain the compiler and options specified are
- appropriate for your system. Second, if you have enabled the syslog
- daemon on your system, note that the lsv_amin program logs informational
- and error level messages using the syslog facility. By default, lsv_amin
- logs those messages as part of the mail system. That is, LOG_MAIL is used
- on the openlog() call. If you would prefer to log the LISTSERV mail
- interface entries separate from the other mail software on your system,
- edit lsv_amin.c and change the line
-
- #define LOG_FACILITY LOG_MAIL
-
- replacing LOG_MAIL with LOG_LOCAL1, or whatever category is appropriate
- for your site. If you are using a system on which the openlog() routine
- only takes two parameters, older Ultrix system for example, just change
- LOG_MAIL to 0. Once you've checked the Makefile and (optionally) changed
- the syslog option in lsv_amin.c, enter "make mailer" to build the
- program.
-
- The "lcmd" utility is also distributed in source form. Once you've
- compiled and installed "lcmd", users can use it to send commands to your
- LISTSERV server rather than having to use a mail program. Users familiar
- with the Bitnet version of LISTSERV will find "lcmd" works much like the
- VM "tell" and JNET "send" commands. The primary differences being that
- LISTSERV sends back mail in response to commands submitted with "lcmd",
- and only your local LISTSERV can be reached. In addition to providing a
- simple command line interface to LISTSERV, sending commands with "lcmd"
- obviates the need for password validation of protected commands. Since
- the origin of the command is determined by the username of the person
- running "lcmd", not by parsing mail headers, password checking can be
- skipped by LISTSERV. The lcmd.c program should compile without
- modification. Site specific information needed by "lcmd" will be
- provided by the Makefile when building the program. To compile the
- LISTSERV command interface enter, "make lcmd".
-
- The executable for the LISTSERV server is shipped as one large object
- file that you need to linkedit on your system to produce a suitable
- binary. There should be no need to modify anything in the Makefile to
- perform this step. Just enter, "make server" to build the server program.
- The resulting binary will be a named "lsv".
-
- Sample commands for this step:
- vi Makefile
- vi lsv_amin.c
- make mailer
- make server
- make lcmd
-
- ***********************************************************
- * Moving the programs and files to the proper directories *
- ***********************************************************
-
- The command, "make install" will copy the "lsv", "lsv_amin", and "lcmd"
- programs to the appropriate directories, as specified by the BINDIR and
- LSVROOT macros in the Makefile. In addition several directories will be
- created and a number of data files copied to those directories. While
- there are scenarios in which you can complete this step from the LISTSERV
- account, in most cases you will need to become "root" to run the
- "make install" command.
-
- Sample commands for this step:
- su root
- make install
- exit
-
- ****************************************
- * Customizing LISTSERV for your system *
- ****************************************
-
- LISTSERV needs to know a variety of things about your system, and also
- how to communicate with the people that will be maintaining the software.
- All of the settings that you are likely to want to change are defined in
- the "go.user" shell script, which is created in the LSVROOT directory
- when you enter "make install". There are a number of environment
- variables that you can set to reflect things like the Internet domain
- name of the machine that will be running LISTSERV, the e-mail address of
- the LISTSERV postmaster, etc... You'll need to edit the go.user file in
- the LSVROOT directory, and set each of the variables as appropriate.
- There are comments in the file explaining the purpose of each variable.
-
- Sample commands for this step:
- cd /home/listserv/lsv
- vi go.user
-
- *******************************************
- * Telling your mail system about LISTSERV *
- *******************************************
-
- Please note that the file you need to edit in this step, and the commands
- you need to issue will require root privileges. Also, while the
- procedure for manually modifying the sendmail aliases file is described
- below, you can also enter "make aliases" to have the installation program
- complete this step automatically. The automated procedure assumes that
- your sendmail stores aliases in the file /etc/aliases, that the
- "newaliases" command will rebuild the aliases database, and finally that
- "kill -HUP `cat /etc/sendmail.pid`" will cause Sendmail to read in the
- updated alias list.
-
- LISTSERV accepts and responds to several e-mail addresses. Even before
- you setup mailing lists, mail sent to listserv and owner-listserv should
- be handed to LISTSERV. The link between LISTSERV and your mail system is
- the lsv_amin program. If you are running Sendmail, the best way to route
- incoming mail to lsv_amin is by adding entries to your "aliases" file.
- Refer to the manual pages for sendmail on your system if you are not sure
- where the alias file is stored. On many systems the file will be called
- /etc/aliases. Once you have located the file, add the following lines,
-
- listserv: "|/BBB/lsv_amin /SSS listserv"
- owner-listserv: "|/BBB/lsv_amin /SSS owner-listserv"
-
- to the file, replacing /BBB with the directory where the lsv_amin program
- was installed (the BINDIR macro in the Makefile), and replacing /SSS with
- the LISTSERV spool directory (the LSVSPOOL macro from the Makefile).
- Other than that, the lines should look exactly like the examples above.
- The double quotes should be entered into the alias file.
-
- For example, if you changed BINDIR to /usr/lbin, and kept the default
- LSVSPOOL directory, the new lines in /etc/aliases would look like the
- following.
-
- listserv: "|/usr/lbin/lsv_amin /var/spool/listserv listserv"
- owner-listserv: "|/usr/lbin/lsv_amin /var/spool/listserv owner-listserv"
-
- After updating the alias file, you will need to issue two Sendmail
- commands. First enter "newaliases" to compile the alias file into the
- format the sendmail daemon expects. Then you need to direct the sendmail
- daemon currently running on your system to read the newly compiled list
- of aliases. Refer to the manual pages for sendmail if you are unsure of
- how to do so. The command, "kill -HUP `cat /etc/sendmail.pid`" will work
- on AIX and SunOS systems. If you are running a syslog daemon, sendmail
- will log the fact that it has loaded the new aliases file. You can check
- the syslog output after issuing the command to make sure your changes are
- in place.
-
- Sample commands for this step:
- su root
- cd /etc
- vi aliases
- newaliases
- kill -HUP `cat sendmail.pid`
- exit
-
- **************************************
- * IMPORTANT - License Activation Key *
- **************************************
-
- Please note that this step is handled automatically for evaluation kits.
- The necessary file, called "license.merge", is provided in the COMMON.TAR
- archive and the "make install" command will copy it to the proper
- directory.
-
- Before you can start up LISTSERV, you will need to install a License
- Activation Key (LAK) for 'LISTSERV-xxx' (xxx = SUNOS, AIX, BSDI, etc...).
- In order to offer the same range of services to all LISTSERV sites,
- regardless of the operating system used, we had to develop our own
- "license key" scheme. Using system supplied license managers where
- available and L-Soft LAKs elsewhere would have required us to develop
- multiple authorization schemes, and would also complicate the task of
- issuing license keys to customers.
-
- Since the LAK manager is part of LISTSERV, installing the LAK is done
- last, after all the programs have been built and moved to their proper
- directories. The process is quite simple, you just create a file in the
- $LSVROOT/home directory and start the LISTSERV server to compile the
- information. The instructions for doing so are described in the License
- Registration Form that came with your installation materials.
-
-
- *************************************************************
- * Starting LISTSERV and Verifying a Successful Installation *
- *************************************************************
-
- Once you've customized the "go.user" shell script, you're ready to start
- LISTSERV. To do so, change your current directory to LSVROOT (as defined
- in the Makefile) and enter "go". LISTSERV will print some startup
- messages, then since this is the first time your server has been run,
- LISTSERV will generate a number of files needed to route mail. You
- should see messages similar the ones below.
-
- 12 Jun 1994 22:16:47 LISTSERV-TCP/IP for unix version 1.8a starting...
- 12 Jun 1994 22:16:47 Copyright L-Soft international 1986-1994
- 12 Jun 1994 22:16:47 SIGNUP2 file is being compressed...
- 12 Jun 1994 22:16:47 -> No entry removed.
- 12 Jun 1994 22:16:48 The network tables are outdated and must be rebuilt.
- * Network tables generation process started - be patient...
- Currently processed 500 nodes.
- Currently processed 1000 nodes.
- etc...
-
- And once the table generation steps have finished you will see,
-
- * Step 6 complete - link weights file successfully compiled.
- *
- * Network tables generation completed successfully.
- 12 Jun 1994 22:16:54 Nearest backbone host is LISTSERV@SEARN
- 12 Jun 1994 22:16:54 Nearest NJE host is LISTSERV@SEARN
- 12 Jun 1994 22:16:54 Initialization complete.
-
- which confirms that you've successfully installed the LISTSERV server.
- To issue LISTSERV commands, press Ctrl-C and you will be prompted to
- enter a command. You can verify that your customized version of
- "go.user" was used with the RELEASE command. It will display, among
- other things, the address(es) of the LISTSERV postmaster(s) you entered
- in "go.user". If not, then stop the server and make certain that
- LISTSERV owns the "go.user" file, and that execute permission is set for
- the file. To stop LISTSERV hit Ctrl-C then enter "stop".
-
- Once you've verified that your LISTSERV server starts and accepts
- commands, you should check to make sure the mail interface is working
- properly. If you stopped your LISTSERV, then restart it. You can use
- "go bg" if you'd rather have the server run in the background. After
- restarting LISTSERV, login to a different username and send mail to the
- LISTSERV account on your machine. Include one or more LISTSERV commands
- in the body of the mail message. Since you have yet to define any
- mailing lists to your server, commands like RELEASE, INFO and THANKS
- would be good choices. The mail interface notifies the server
- immediately upon arrival of new mail. So unless your system is heavily
- used when you try sending the message, a response should arrive within a
- few moments. If you don't receive mail back from LISTSERV, check for
- syslog entries generated by the mail interface, lsv_amin. Also, check to
- see if there are any errors on the terminal/window where you're running
- LISTSERV. If you started the server with "go bg" check the file
- "listserv.log" for error messages.
-
- **************************************************
- * Talking to other LISTSERV evaluation kit users *
- **************************************************
-
- A discussion group for sites that have installed evaluation copies of
- LISTSERV has been created to facilitate communication between LISTSERV
- maintainers, list owners and L-Soft support staff. The list is called
- LSTSRV-E, and you can subscribe by sending mail to LISTSERV@LISTSERV.NET,
- with the command, "SUB LSTSRV-E Your Name" in the body of the mail
- message. If you have any questions, comments, helpful hints, etc...
- please post them to LSTSRV-E for distribution to other people
- participating in the evaluation. Don't forget to mention which version
- of UNIX(R) you are using when posting. The purpose of the list is to
- share your experience and problems with other users of evaluation kits.
- Because there are so many versions and brands of unix, the kits haven't
- been tested equally on all possible platforms. Knowing which kit you are
- using will streamline the process of finding an answer to your questions.
-
- **************************
- * Registering the server *
- **************************
-
- NOTE: This section does not apply to evaluation kits. Evaluation copies
- of LISTSERV should not be registered because they are (presumably)
- temporary servers running test lists, whose existence should not be
- broadcast.
-
- Once the server is ready for production use (that is, once you have
- installed a permanent License Activation Key, and once you have arranged
- for LISTSERV to be started automatically when the system boots), you
- should register it with L-Soft by filling in the enclosed registration
- form, and returning it to Support@LSOFT.COM. Registering the server is
- necessary to broadcast its existence to the other LISTSERV servers. Once
- you have registered, your server will be sent periodic updates about the
- lists hosted by other LISTSERV sites, among other things, and, similarly,
- other LISTSERV sites will receive information about the public lists you
- are hosting. Here is the registration form (the fields you must fill in
- are represented as XXXXXXXX, or a suggested value is provided):
-
- ------------------------------- Cut here --------------------------------
- :node.XXXXXXXX ! Internet hostname, including domain name.
- :userid.LISTSERV ! Username under which LISTSERV runs
- :net.Internet ! Must be Internet, LISTSERV for UNIX cannot
- ! cannot run in NJE (BITNET) mode
- :site.XXXXXXXX ! University of XYZ, city, state, country
- :country.XX ! Two-letter ISO country code
- :system.XXXXXXXX ! Which type of UNIX system, and the version
- ! Examples: SUNOS 4.1, AIX 3.2.5, etc...
- :machine.XXXXXXXX ! Hardware - RS6000 320H, AXP 3000-600, etc...
- :contact.XXXXXXXX ! Contact person, in the following format:
- ! (Joe Manager) JOE@XYZ.EDU (+1 301 871.2727)
- :type.unix ! Do not change this - must be "unix"
- :version.1.8a ! Version you are currently running
- :backbone.XXXXXXXX ! YES or NO, depending on whether you want to
- ! participate in the LISTSERV backbone; L-Soft
- ! will advise you on this keyword.
- ------------------------------- Cut here --------------------------------
-
- *****************
- * List creation *
- *****************
-
- In order to create a new list, you must:
-
- 1. Prepare a "list header", for instance using the sample provided below.
- You can also get the header of an existing (L-Soft) LISTSERV list and
- use it as sample.
-
- 2. Fill in the PW=CCCCCCCC on the first line with the "CREATEPW" you
- chose when configuring LISTSERV. The PW=XXXXXXX line at the end
- defines the password you want to assign to your list. This is the
- password that the list owner will have to supply with sending commands
- via mail, if you select "Validate= Yes". Alternatively, you can select
- "Validate= Yes,Confirm" to use the "OK" mechanism, which does not
- require any password.
-
- 3. Mail the resulting file to the LISTSERV address, from a username
- defined as "postmaster" in the LISTSERV configuration. For instance:
-
- mail listserv@xyz.edu < newlist.create
-
- If you have questions about list creation, keywords, list management and
- other high-level or system-independent LISTSERV topics, the best place to
- ask them is the LSTOWN-L list, an open forum of LISTSERV list owners.
-
- Please note that LISTSERV will not create archive directories
- automatically. You must issue the appropriate "mkdir" command yourself.
- And when creating such directories, remember that the file permissions
- must grant the LISTSERV account write access to the directory. Also,
- directories should be specified as full path names.
-
- For assistance with problems specific to evaluation kits, join the
- LSTSRV-E list or contact Support@LSOFT.COM for a prompt reply. Please
- don't forget to tell us which brand and version of unix you are running!
-
- ************************
- * Note to VM customers *
- ************************
-
- VM lists can be migrated to unix with a much simpler procedure:
-
- A. Stop LISTSERV on unix, and go to its /home directory.
-
- B. FTP a copy of the xxxx.LIST file from the VM system, in ASCII mode.
- Note that you must grab the file as it appears on the VM server's
- "A-disk". If you send a REVIEW command to the VM LISTSERV, you may be
- sent a file called xxxx.LIST, but it is not suitable for migration:
- among other things, it will not list subscribers with the "conceal"
- flag.
-
- C. If the list is archived, edit the xxxx.LIST file (which is an ordinary
- text file) to insert a suitable directory name in the "Notebook="
- keyword (see example below). Do not modify the lines with subscriber
- names! The only lines you may edit at this stage are the ones starting
- with an asterisk.
-
- D. Start the unix LISTSERV. It will issue a warning about incorrect list
- format, and automatically convert it to the format used on unix.
-
- You can also FTP the archive files (xxxx.LOGyymm) directly to the
- directory selected in point C.
-
- ------------------------------- Cut here --------------------------------
- PUT SAMPLE.LIST PW=CCCCCCCC
- *
- * Title of sample LISTSERV list
- *
- * Review= Public Subscription= Open Send= Public
- * Notify= Yes Reply-to= List,Respect Files= No
- * Stats= Normal,Private Validate= No
- * Notebook= Yes,/some/directory,Monthly,Public
- *
- * Owner= someone@somewhere.EDU
- *
- * PW= XXXXXXXX
- ------------------------------- Cut here --------------------------------
-
- Once you have constructed a list header file, and sent it to your
- LISTSERV, you need to instruct your mail system to route mail for that
- new list to the LISTSERV mail interface. That involves adding entries to
- your Sendmail aliases file, much like you did when installing the server
- itself. For each new list, you'll need to add four entries to the
- aliases file. The format of those lines is as follows,
-
- NAME: "|/BBB/lsv_amin /SSS NAME"
- owner-NAME: "|/BBB/lsv_amin /SSS owner-NAME"
- NAME-server: "|/BBB/lsv_amin /SSS NAME-server"
- NAME-request: "|/BBB/lsv_amin /SSS NAME-request"
-
- where "NAME" is the name of the mailing list, "/BBB" in the directory
- where the mail interface was installed (BINDIR in the Makefile), and
- "/SSS" is the LISTSERV spool directory (LSVSPOOL in the Makefile).
-
- For example, assuming the default values were chosen for BINDIR and
- LSVSPOOL, the aliases for a new list called "newt" would be,
-
- newt: "|/usr/local/bin/lsv_amin /var/spool/listserv newt"
- owner-newt: "|/usr/local/bin/lsv_amin /var/spool/listserv owner-newt"
- etc...
-
- Once you've added the new aliases to the file, you need to issue the
- "newaliases" command and send your Sendmail daemon a hangup (HUP) signal
- before they will take effect.
-
- As with the earlier step where adding mail aliases was necessary, the
- commands documented above can be automatically invoked by using the
- "make" command. If you system stores aliases in /etc/aliases, and the
- newaliases command can be used to compile that file, and if the command
- "kill -HUP `cat /etc/aliases`" will cause your Sendmail to reload the
- alias file, then the automated method should work. To add the mail
- aliases for a new list, and to direct your Sendmail to use those new
- aliases immediatedly, enter "make list name=XXX" where "XXX" is the name
- of the new list.
-
- ***********************************
- * Starting LISTSERV automatically *
- ***********************************
-
- The "go" shell script can be called from an inittab entry if you would
- like LISTSERV to be started whenever your system is rebooted. And since
- the "lsv" program takes over the shell script's process, the "respawn"
- option can be used if you would like the init process to monitor and
- restart LISTSERV if it should stop for some reason. If you choose to
- treat LISTSERV like other daemon processes, it is advisable to redirect
- the standard output of the go script to a file. Otherwise, information
- needed to track and resolve problems will not be available for reference.
- You can either edit the "go" script, which is located in the LSVROOT
- directory, or start the server with the command "go bg". The "bg", or
- "background", option will redirect LISTSERV's informational and error
- messages to a file called "listserv.log" in the LSVROOT directory. By
- way of example, here is the inittab entry used on one of the L-Soft
- development machines.
-
- listserv:2:respawn:/u/listserv/server/go bg
-
- Please refer to the manual pages for init, and inittab on your system for
- specific information on how such mechanisms work on your version of
- UNIX(R).
-
- *************************
- * File server functions *
- *************************
-
- There are three file server systems currently in use or under development
- for LISTSERV:
-
- - The VM (mainframe) version of LISTSERV supports the "traditional" file
- server system. While it is very powerful, this file server system dates
- back to 1986 and suffers from a few annoying limitations. In addition,
- it is written in a non-portable language. This will be replaced with
- the "new" file server system, currently under development (expected
- 1Q95).
-
- - The workstation versions of LISTSERV support a "temporary" file server
- system, to provide an interim solution while the new system is being
- developed. This temporary system only supports a subset of the
- functions of the traditional system.
-
- - The "new", portable file server system will be a superset of the
- traditional system, in terms of functionality. Most end user commands
- will continue to work as before. However, there is no guarantee that
- the internal data files manipulated by the file server functions will
- remain as before.
-
- In general, the three systems are compatible, with the understanding that
- the temporary system does not include all the possible options. However,
- the mechanism for registering files (defining them to the file server
- system) is different. With the traditional system, you create files
- called "xxxx FILELIST", which contain definitions for all the files
- belonging to a particular archive. With the temporary system, you store
- these definitions in a file called "site.catalog", in the LISTSERV "root"
- directory. The LSV$ROOT macro in the Makefile defines this directory.
- While you can create files called "xxxx FILELIST" and users can retrieve
- them, they do not in turn define further files. The new file server
- system will eliminate this confusion, but in the meantime you should be
- aware of the differences between VM and workstation file server functions
- as many list owners use a VM server with different conventions.
-
- To register a new file to the server, you add a line to the
- "site.catalog" file in the LSV$ROOT directory (create it if it did not
- exist). Do not modify the "system.catalog" file, as it is part of
- LISTSERV and may be replaced when you apply service. Here is what a
- typical "site.catalog" entry looks like:
-
- MY.FILE my.file./aaa/bbb XXX YYY
-
- The first item, MY.FILE, is the name by which the file is known to
- LISTSERV. That is, the users will use GET MY.FILE to order a copy of that
- file. The name should only contain one period. Only the first 8
- characters of the name and the first 8 characters of the extension are
- shown by the INDEX command. This restriction will be removed with the new
- file server system.
-
- The second item, "my.file./aaa/bbb", is the name LISTSERV will use for
- the actual UNIX file: filename, period, extension, period, directory.
- The strange format is because LISTSERV uses an operating system
- abstraction layer for file accesses, where all system-dependent
- attributes are relegated to the last item. Note that the directory must
- be created before you register the file. For security reasons, LISTSERV
- will not create the directory (or set the protections) for you.
-
- The third and fourth items are "File Access Codes" (FACs). The first is
- for read accesses, and the second for writing. The following file access
- codes are available:
-
- - ALL: universal access.
-
- - CTL: LISTSERV administrator only.
-
- - PRIVATE(xxx): only members of the xxx list have access.
-
- - OWNER(xxx): only the owners of the xxx list have access.
-
- - SERVICE(xxx): only users in the service area of the xxx list have
- access.
-
- - NOTEBOOK(xxx): same access as the archives of the xxx list.
-
- - user@host: the user in question is granted access.
-
- Except for ALL and CTL, which must occur on their own, you can specify
- multiple file access code entries, separated by a comma with no
- intervening space. For instance:
-
- MY.FILE my.file./pub JOE@XYZ.EDU,JACK@XYZ.EDU,PRIVATE(XYZ-L) CTL
-
- defines a file that Joe, Jack and the subscribers of the XYZ-L list can
- order via the GET command, but that only the LISTSERV administrator can
- update.
-
- IMPORTANT: LISTSERV does not set file protections to ensure that only the
- people listed are allowed to access the files. These attributes apply to
- LISTSERV commands (GET, PUT, INDEX) only; it is your responsibility to
- protect the actual UNIX file and parent directory by setting the file
- protections and/or ownership (UID and GID) to prevent unwanted access by
- local users. Please keep in mind that the LISTSERV username must be able
- to read the files it is to distribute to people, and it must have
- read/write access to files you want people to be able to update via PUT
- commands.
-
- ********************************************
- * The bare facts about installing LISTSERV *
- ********************************************
-
- - Create a listserv account on your system.
-
- - Make a temporary directory, say /tmp/lsvinst or whatever is
- convenient.
-
- - Copy the files, common.tar.Z and `uname`.tar.Z to that directory,
- uncompress and untar them.
-
- - Edit Makefile changing the BINDIR, LSVROOT and LSVSPOOL macros to
- point to the appropriate directories.
-
- - Enter "make server" to make the LISTSERV server "lsv", enter
- "make mailer" to compile the sendmail interface, "lsv_amin", and enter
- "make lcmd" to build the command interface utility "lcmd". You can
- make all three of them with "make all" if you prefer.
-
- - Edit the file go.user.sample and set the environment variables as
- directed by the comments in the file.
-
- - Enter "make install" to create the LISTSERV work directory and spool
- directory, copy "lsv" and the data files in the "home" directory to
- wherever you defined LSVROOT, and also to copy "lsv_amin" to the
- BINDIR directory.
-
- - Add the lines,
-
- listserv: "|/BBB/lsv_amin /SSS listserv"
- owner-listserv: "|/BBB/lsv_amin /SSS owner-listserv"
-
- (where /BBB is the BINDIR directory, and /SSS is the LSVSPOOL
- directory) to your sendmail aliases file. Then rebuild the aliases
- and send the appropriate signal to your sendmail daemon to load the
- new aliases.
-
- - Delete all the files in /tmp/lsvinst (or whatever you called the work
- space in step 1). All the files needed to run LISTSERV have been
- copied to either LSVROOT or BINDIR already, so there's no need to keep
- anything that's left in the work directory.
-
- - Follow the instructions in the License Registration Form you received
- with your installation materials to install your License Access Key
- (LAK). If you are installing an evaluation copy of LISTSERV, this step
- is handled automatically by the "make install" command listed above.
-
- - To start the LISTSERV, change directories to LSVROOT and enter either
- "go" to run the server with output logged to the terminal, or "go bg"
- to run in the background with the log written to listserv.log in the
- LSVROOT directory.
-
- - Test the server by sending mail to "listserv" from any account other
- than "listserv" itself with some command in the body of the mail
- message. Since you haven't defined any mailing lists yet, commands
- that don't requires lists, like INFO, RELEASE or even THANKS commands
- might be best.
-
- - Subscribe to the LSTSRV-E mailing list by sending the command
- "SUB LSTSRV-E Your Name", in the body of a mail message, to
- LISTSERV@LISTSERV.NET.
-
- - Once you've tested your server sufficiently, fill out the sample
- registration form given in the "Register your Server" section and
- return it to L-Soft. Please note that if you are installing an
- evaluation copy of LISTSERV you should skip this step.
-
- If all went well, you're ready to add mailing lists to your LISTSERV.
- Please refer to the "List creation" section of this guide for
- instructions on how to do so.
-
- -------------------------------------------------------------------------
- L-SOFT is a trademark of L-Soft international.
-
- Unix is a registered trademark of UNIX Systems Laboratories, Inc.
-
- AIX is a registered trademark of International Business Machines
- Corporation.
-
- Ultrix is a trademark of Digital Equipment Corporation.
-
- Sun is a registered trademark of Sun Microsystems, Inc.
-
- JNET is a registered trademark of Wingra Technologies, Inc.
-
- All other trademarks, both marked and not marked, are the property of
- their respective owners.
- -------------------------------------------------------------------------
-
-