Last update: 19 Mar 2001
Contents: Statement of Year 2000 Compliance for L-Soft's Products Installation Overview For those sites running Sendmail Sendmail and restricted shells Usernames needed by LISTSERV Extracting installation materials from the "tar" files Deciding where LISTSERV will reside Building the interface utilities and LISTSERV server Using the precompiled binaries Moving the programs and files to the proper directories Customizing LISTSERV for your system Telling your mail system about LISTSERV Telling Post.Office and Netscape Mail Server about LISTSERV Running LISTSERV under a userid other than 'listserv' IMPORTANT - License Activation Key Starting LISTSERV and Verifying a Successful Installation Talking to other LISTSERV evaluation kit users Registering the server Automatic Registration for LISTSERV Lite Servers List Creation Deleting a list Note to customers migrating from VM Starting LISTSERV automatically File server functions The bare facts about installing LISTSERV Installing the LISTSERV web archive and administration interface Upgrading your LISTSERV installation Contacting L-Soft Support Documentation and where to get more help For changes to LISTSERV from version 1.8c to 1.8d, please download the LISTSERV 1.8d release notes from ftp://ftp.lsoft.com/ftp/documents/relnotes. There are now two versions of LISTSERV: A "Classic" version and a "Lite" version. For a description of the differences between LISTSERV Classic and LISTSERV Lite, please see the URL http://www.lsoft.com/listserv-lite.html LISTSERV Lite is user-supported, via the mailing list LISTSERV-LITE@PEACH.EASE.LSOFT.COM Please do not send questions regarding LISTSERV Lite to L-Soft's normal support addresses. +=========================================================+ | Statement of Year 2000 Compliance for L-Soft's Products | +=========================================================+ Please see http://www.lsoft.com/y2k-faq.html. +=======================+ | Installation Overview | +=======================+ If you're very familiar with software installations on your system and would prefer terse, matter of fact steps rather than complete instructions, skip to the section entitled "The Bare Facts About Installing LISTSERV" near the end of this document. LISTSERV Classic for UNIX(R) is distributed as two compressed "tar" archive files, while LISTSERV Lite for UNIX(R) is distributed as a single compressed "tar" archive file. The installation guide, which is the file you are currently reading, is also available independently of the archives. For Classic, one of the tar files contains data files common to LISTSERV on all UNIX(R) platforms, including the Makefile, and the other contains the compiled version of the LISTSERV server; for Lite, all files needed, including the "common" files, are shipped in the single archive. In order to simplify the process of removing extraneous files created during the installation procedure, you should copy the tar file(s) to a scratch directory, install LISTSERV, and then "rm -fr /tmp/scratch" (or whatever you name the staging area). LISTSERV for UNIX is now shipped with both: * pre-compiled lsv and lsv_amin binaries which will run with the default settings; and * an lsv.o object file and C source for lsv_amin that can be linked locally if you need to modify the Makefile or simply prefer to compile the server yourself. The installation of LISTSERV consists of the following steps: * creating a "listserv" username, * extracting the files in the two archive files into a 'scratch' directory, * customizing the Makefile, including deciding what directories you want used for incoming mail, as well as for the LISTSERV program and data files, * depending on whether or not you are using the precompiled binaries: - if you are not using the precompiled binaries: running "make mailer", "make lcmd", and "make server" to create the LISTSERV sendmail interface, command line interface, and LISTSERV server programs respectively. - if you are using the precompiled binaries: renaming 'lsv_amin- precompiled' to 'lsv_amin'. - if you do not have a compiler, moving or deleting the 'lcmd.c' and 'jobview.c' files from the 'scratch' directory. * running "make install" to create the necessary directories, and copy the programs generated in the previous step to the proper places, * setting file and directory permissions so that lsv_amin and 'listserv' can have access to their files, * 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 directing your sendmail daemon to use the new aliases, * creating a "license.merge" file to make license key information available to your server, * (Classic) subscribing to the LSTSRV-E forum to join others in discussing experiences with the evaluation copies of LISTSERV, * (Lite) subscribing to the LISTSERV-LITE forum to join others in discussing experiences with LISTSERV Lite, * and finally (Classic only), filling out and returning (via e-mail) information about your LISTSERV server so that other LISTSERV servers 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 server and verify that it's working. You'll then be ready to create mailing lists and start using your LISTSERV server. +==================================+ | For those sites running Sendmail | +==================================+ It used to be the case that many commercial unixes were shipped with sendmail version 5. In recent years this seems to have become the exception rather than the rule, but it is important to note that if your sendmail is at a version less than version 8, you will probably experience long turnaround times on requests to LISTSERV that could run to several hours. This is because earlier Sendmail versions can handle only 1-2K deliveries per day. L-Soft strongly recommends that any Unix site running LISTSERV with Sendmail upgrade to at least Sendmail version 8.7.x (and you will probably want to upgrade to an even newer version to get features like relay control). If you are running a sendmail earlier than 8.7.x, please note that the official sendmail distribution site (ftp.cs.berkeley.edu/ucb/sendmail) currently notifies users that "8.6 is not supported, not secure, and should not be run on any network-connected machine." It is L-Soft's observation over a number of years that in general, performance problems under unix are usually due to sendmail not accepting mail at the rate LISTSERV wants to submit it. Thus for best performance on large LISTSERV installations under unix, it is important to tune sendmail for fastest delivery. L-Soft particularly recommends that for sendmail 8.8 and later you should set FEATURE(nocanonify) in the sendmail.mc file and rebuild sendmail.cf. This has the drawback of losing the ability to refer to other local machines by their non-qualified names (ie if you are listserv.example.com you can no longer refer to, say, corp.example.com as simply "corp"), but this makes sendmail accepting incoming mail a lot faster and also reduces the load on your DNS server. At least one site has reported a 6x performance boost just based on this one change. +================================+ | Sendmail and restricted shells | +================================+ If you are running sendmail out of a restricted shell (for instance the smrsh shell), note that the lsv_amin mailer program that you will install below must be registered as a trusted application that may be executed by sendmail, or mail sent to LISTSERV and to lists will be rejected (typically with a sh: lsv_amin not available for sendmail programs error, although this may depend on how you have sendmail set up). Registering an application with the restricted shell typically involves placing symbolic links from (typically) /usr/adm/sm.bin/ to the programs which are authorized. (On some recent Red Hat and possibly other systems the link is made to /etc/smrsh -- just note that this may be system dependent and be sure to read your sendmail restricted shell documentation carefully.) If you need more information on restricted shells, please refer to the sendmail documentation. +==============================+ | 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 towill 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 | +========================================================+ BEFORE STARTING: Please note that the Makefile should be run from a temporary directory rather than the target directory. Otherwise some 'mv' commands will produce unexpected results. For LISTSERV Classic, 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. For LISTSERV Lite, you will receive only one archive file, which will be called AIX.tar.Z, or SunOS.tar.Z, or ULTRIX.tar.Z, etc... depending on the version of UNIX(R) you are using. Again, the filename is taken from the string returned by the "uname" command on each UNIX(R) platform. For LISTSERV Lite installations simply ignore further references in this document to common.tar.Z as all of the "common" files are contained in your `uname`.tar.Z file. 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 and directories have been created in your current directory, Makefile lcmd.c lsv_amin.h go listview.c sf90m go.sys lsv u-install.memo go.user.sample lsv.o wa home lsv_amin-precompiled jobview.c lsv_amin.c and the ./home directory will contain the following files. aliases.names intpeers.names listfile.memo listownr.memo peers.names bitearn.nodes license.merge listjob.memo listpres.memo service.names country.file linkswt2.file listkeyw.memo listqs.memo site.catalog default.mailtpl listall.refcard listkwd.file listserv.memo stdcmd.file default.wwwtpl listcat.file listlpun.memo lsvhelp.file sysff.file errfac.file listdev.memo listmast.memo lsvinfo.file system.catalog Note however that LISTSERV Lite kits will not contain bitearn.nodes or linkswt2.file as they are not needed for LISTSERV Lite. 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 | +=====================================+ If you plan to use the precompiled lsv binary, you can skip this section as it uses the defaults for these locations. 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 $(LSVROOT)/spool. 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 set to /home/listserv. If you choose the default setting, the directories /home/listserv, /home/listserv/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. Documented restriction: Please note that under unix, all files and directory paths accessed by LISTSERV must be in lower case. In other words, you cannot install LISTSERV under the LSVROOT path of /home/users/LISTSERV ; you must use the path /home/users/listserv (or in any case, a path that is in lower case). Sample commands for this step: vi Makefile +======================================================+ | Building the interface utilities and LISTSERV server | +======================================================+ If you do not have a compiler (or are planning to use the precompiled binaries in the kit), skip to the next section. Note that L-Soft does not recommend using the precompiled executables if you have a compiler. It is always preferable to compile and link with your own local libraries rather than to assume that ours are the same as yours. 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 instead of Sendmail, you must change the value of the Makefile macro LSVAMIN_TYPE from "flags" to "links". This causes LISTSERV to use symbolic links to "lsv_amin" for each LISTSERV e-mail address. ZMAILER users must choose this option since programs run from ZMAILER "aliases" files can't have arguments. If you are running PP instead of Sendmail, you can compile the standard mail interface with -DMAIL_PP. To compile lsv_amin, first check the CC and CFLAGS macro 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.h 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, an 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.h, 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 are 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". If you have decided to link the lsv.o file and make your own lsv 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 named "lsv". Sample commands for this step: vi Makefile vi lsv_amin.c make mailer make lcmd make server +================================+ | Using the precompiled binaries | +================================+ (If you are not planning to use the precompiled binaries, please skip to the next section.) If you do not have a compiler, or if you have just decided to use the precompiled binaries from the kit, you now need to rename the lsv_amin- precompiled binary to lsv_amin . This will prevent 'make' from trying to call 'cc'. Please note that there is no precompiled lcmd binary. This is because lcmd requires that the LSVSPOOL directory specification be compiled into it, and there is no way to know ahead of time whether or not your site will be using the defaults. Therefore sites that elect to use the precompiled binaries will not be able to run 'make lcmd'. If you are using the precompiled binaries because you do not have a compiler, you should move or delete the 'lcmd.c' and 'jobview.c' files from the 'scratch' directory before running 'make install', so that the Makefile doesn't try to compile them and crash because it can't find 'cc'. Sample commands for this step: mv lsv_amin-precompiled lsv_amin rm lcmd.c rm jobview.c +=========================================================+ | 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. SOLARIS SPECIFIC: When issuing the commands below be sure to follow them exactly. If you issue "su - root" instead of "su root" LISTSERV will be installed but will fail when you attempt to start it. 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 vi go.user +=========================================+ | Telling your mail system about LISTSERV | +=========================================+ If you are using Software.Com's Post.Office product or Netscape's Netscape Mail Server product instead of sendmail, please see the next section. 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 /home/listserv/spool listserv" owner-listserv: "|/usr/lbin/lsv_amin /home/listserv/spool 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 +=============================================================+ | Telling Post.Office and Netscape Mail Server about LISTSERV | +=============================================================+ LISTSERV can be used with either of these products. You still need to make the same aliases but since neither Post.Office or Netscape Mail Server use /etc/aliases, the procedure is significantly different. L-Soft does not have any test machines running either of these products so the procedure as outlined is based on correspondence with customers who have made this combination work rather than based on tests run on our own systems. First, you must make a mailbox (login) for each of the aliases discussed in the previous section. Next, you must use the mail server's configuration GUI to create "program delivery" aliases for each of the mailboxes you have created in the previous step. The "program delivery" aliases must point to the lsv_amin executable, which is responsible for passing incoming mail to LISTSERV in the correct format. Note that this procedure is identical for both the server aliases and for the eight aliases that need to be created for each mailing list (see below under "List Creation"). If you are not familiar with "program delivery" and creating aliases under Post.Office or Netscape Mail Server, please consult the documentation for the respective program. L-Soft cannot help you with the configuration of Post.Office or Netscape Mail Server. Current versions of these products may also require that you configure them so that lsv_amin is known as a "trusted" program. For more information, again please consult the documenentation for the respective program. +=======================================================+ | Running LISTSERV under a userid other than 'listserv' | +=======================================================+ If you do change the username under which LISTSERV runs (which for the reason noted above is not recommended by L-Soft), you must make sure that the following points are observed as you work through the installation: * You must set the LSVNAME macro in the Makefile to the username you have selected. * If you have a compiler, you must edit lsv_amin.c and change the line #define LISTSERV "LISTSERV" to #define LISTSERV "USERNAME" where USERNAME is the username you have selected. * You must ensure that the lsv_amin mailer, when run, is invoked suid userid, where "userid" is the username LISTSERV is running under. Otherwise mail sent to LISTSERV will be treated as if it were being sent to a list with the name "userid". * If you do not have a compiler and must use the precompiled lsv_amin executable, you will have to modify the aliases in /etc/aliases that are normally made by the 'make aliases' stage of the Makefile. For instance if you have decided to run LISTSERV under the username 'listmanager', you would have to make the aliases listmanager: "|/usr/local/bin/lsv_amin -t listserv" owner-listmanager: "|/usr/local/bin/lsv_amin -t owner-listserv" In other words, lsv_amin will be invoked suid listmanager but will feed the userid 'listserv' to LISTSERV. Since you cannot change the name used internally by LISTSERV unless you have a compiler, this is required to keep mail to 'listmanager' and 'owner-listmanager' from being treated as list mail rather than administrative mail. * (Classic only) If you do not intend to register your server you should set RUNMODE="STANDALONE" export RUNMODE in the go.user file to prevent your server from attempting to use the LISTSERV backbone to distribute mail (this will fail for non-registered servers not running under the 'listserv' userid and is just annoying for postmasters of other servers who will receive an error every time such a job goes out). +====================================+ | 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 called license.merge 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 1998 22:16:47 LISTSERV-TCP/IP for unix version 1.8d starting... 12 Jun 1998 22:16:47 Copyright L-Soft international 1986-1998 12 Jun 1998 22:16:47 SIGNUP files are being compressed... 12 Jun 1998 22:16:47 -> No entry removed. 12 Jun 1998 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 1998 22:16:54 Nearest backbone host is LISTSERV@PEACH.EASE.LSOFT.COM 12 Jun 1998 22:16:54 Nearest NJE host is LISTSERV@PSUVM 12 Jun 1998 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 or to LISTSERV Lite kits. Evaluation copies of LISTSERV should not be registered because they are (presumably) temporary servers running test lists, whose existence should not be broadcast. LISTSERV Lite kits are automatically registered (see the next section for details). 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 consider registering it with L-Soft. Please note the following restrictions: L-Soft currently accepts new registrations only for sites that: * are running version 1.8c or higher of LISTSERV Classic or LISTSERV Classic HPO; and * have unlimited (UNITS=0) licenses or are specifically licensed for DISTRIBUTE-only use; and * have names that are unlikely to change any time soon. For instance, LISTSERV.EXAMPLE.ORG, LISTS.EXAMPLE.EDU, and LSV.EXAMPLE.COM are completely acceptable (although we strongly suggest using "LISTSERV" rather than "LISTS" or "LSV", simply because that is what most users are familiar with), whereas something like A8B703A.CC.EXAMPLE.EDU is not. If you are running a test serve that you plan to rename later when it goes into production, do not register the server until it is running under its final name. Note also that it is usually necessary to provide a DNS A record or MX record at minimum for the host name you are registering. A DNS CNAME will usually get rewritten by random sendmails and will cause authentication problems with outbound DISTRIBUTE and other jobs. If you cannot send mail to your LISTSERV server from an external address and receive a response with an RFC822 From: line that is identical to the NODE= value in your site configuration file, you will have to make DNS or sendmail configuration adjustments so that NODE= and the From: line match. L-Soft will not register sites that do not or can not meet this important criterion. If your LISTSERV site does not meet all of the above criteria, there are other options for keeping your LISTSERV networking tables current (which is the most important reason for registering the software). See http://www.lsoft.com/table-updates.html for more information. Registering the server is necessary to broadcast its existence to the other LISTSERV servers and to receive automatic, periodic updates of LISTSERV's networking tables. Once you have registered, your server will also be sent periodic updates about the public lists hosted by other LISTSERV sites, and, similarly, other LISTSERV sites will receive information about the public lists you are hosting. Registration also makes it possible to assign the most efficient DISTRIBUTE routing path for your server. You may submit an online registration form at http://www.lsoft.com/regform.html If there are special considerations for your site that are not covered by the standard form, or if you are unable to access the web site, you can contact registrar@lsoft.com to obtain a registration form. When contacting the site registrar, please tell us what operating system LISTSERV is running under so that we can send you the proper form. +==================================================+ | Automatic Registration for LISTSERV Lite Servers | +==================================================+ LISTSERV Lite servers are registered automatically when you start the software for the first time. This auto-registration is not optional for Free Edition servers, but may be disabled for non-Free Edition Lite servers by specifying STANDALONE runmode (see "RUNMODE=" in Appendix C of the Site Manager's Operations Guide). The auto-registration allows you to take part in the global List of Lists and CataList services maintained by L-Soft. Registrations are verified on a regular basis by a central L-Soft server, which sends out several informational commands that return non-privileged information about your server (anyone can issue these commands). Since these registrations are maintained by regular communication with your server, please note that, should you decommission the server, registration verifications will continue to be mailed to your server for several days until the central server decides that your server is actually gone, and not simply unable to receive mail for some reason. Please note carefully that it is not possible for L-Soft to stop these registration queries manually even if you write to us and tell us that the server has been shut down permanently. They will stop after several days without a response. +===============+ | 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! Following is a sample list header file that can be modified, then cut and pasted into a mail message to be sent to your LISTSERV server. For help with the various header keywords (not all are shown here), please refer to the LISTSERV List Owners Manual. ------------------------------- Cut here -------------------------------- PUT SAMPLE.LIST PW=CCCCCCCC * * Title of sample LISTSERV list * * Review= Public Subscription= Open Send= Public * Notify= Yes Reply-to= List,Respect Validate= No * Notebook= Yes,/some/directory,Monthly,Public * * Owner= someone@somewhere.com * * PW= XXXXXXXX ------------------------------- Cut here -------------------------------- (If you use this sample, be sure to change "/some/directory" in the Notebook= keyword specification to a directory that actually exists on your machine. Also be sure to put a valid e-mail address in the Owner= keyword.) 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. (If you are running Software.Com's Post.Office or Netscape Mail Server as your MTA rather than sendmail, please see the section above entitled "Telling Post.Office and Netscape Mail Server about LISTSERV" for specifics on how to create "program delivery" aliases.) Telling the MTA how to route mail to LISTSERV 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 eight 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-request: "|/BBB/lsv_amin /SSS NAME-request" NAME-search-request: "|/BBB/lsv_amin /SSS NAME-search-request" NAME-server: "|/BBB/lsv_amin /SSS NAME-server" NAME-signoff-request: "|/BBB/lsv_amin /SSS NAME-signoff-request" NAME-subscribe-request: "|/BBB/lsv_amin /SSS NAME-subscribe-request" NAME-unsubscribe-request: "|/BBB/lsv_amin /SSS NAME-unsubscribe-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, and LSVROOT is /home/listserv, the aliases for a new list called "newt" would be, newt: "|/usr/local/bin/lsv_amin /home/listserv/spool newt" owner-newt: "|/usr/local/bin/lsv_amin /home/listserv/spool owner-newt" newt-request: "|/usr/local/bin/lsv_amin /home/listserv/spool newt-request" newt-search-request: "|/usr/local/bin/lsv_amin /home/listserv/spool newt- search-request" newt-server: "|/usr/local/bin/lsv_amin home/listserv/spool newt-server" newt-signoff-request: "|/usr/local/bin/lsv_amin /home/listserv/spool newt- signoff-request" newt-subscribe-request: "|/usr/local/bin/lsv_amin /home/listserv/spool newt- subscribe-request" newt-unsubscribe-request: "|/usr/local/bin/lsv_amin /home/listserv/spool newt- unsubscribe-request" (Note that /etc/aliases does not use line continuation characters and will not operate properly unless each alias is on a line by itself. Thus, the last three aliases above should be on a single physical line, not wrapped as in the example.) 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 immediately, enter "make list name=XXX" where "XXX" is the name of the new list. +=================+ | Deleting a list | +=================+ While there is no LISTSERV command to delete a list, the procedure is quite simple. Log in to the listserv account (or any other account with privileges in LISTSERV's directories, e.g., root), copy or archive any files (list archives, etc.) that you want to keep to a safe place, and then use the Unix 'rm' command to delete the list file. For instance, if you are deleting a list called 'test.list', simply 'rm test.list' from the LISTSERV 'home' directory (by the Makefile default, this directory is /home/listserv/home). Optionally you may also remove the Sendmail aliases from /etc/aliases, but once the '.list' file is gone, it has been deleted as far as LISTSERV is concerned. +=====================================+ | Note to customers migrating from VM | +=====================================+ 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 above). 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. +=================================+ | 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 (this one happens to be a Linux machine): ls:3:respawn:/home/listserv/go bg >/dev/console 2>&1 Please note that this respawn method may not work if you don't have sh as the default shell for 'listserv'. You also need to ensure that the runlevel specified in the inittab entry is the same as the default runlevel for the machine. 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 continues to support 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 eventually with the "new" file server system, currently under development. * The non-VM versions of LISTSERV 1.8d enhance further the new file server system introduced in non-VM 1.8c, which includes most of the functionality of the "traditional" file system. Notably, GIVE and file "packages" are now available. 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. Note that SITE.CATALOG files from versions 1.8a through 1.8c are still supported and will not need to be changed in order to work with 1.8d. * The non-VM versions of LISTSERV 1.8a and 1.8b supported a "temporary" file server system, to provide an interim solution while the new system was being developed. This temporary system only supports a subset of the functions of the traditional system. This system is no longer supported by L-Soft as it has been superseded by the new non-VM file server referenced above. 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 (VM) system, you create files called "listname 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 "home" directory (by the Makefile default, this directory is LSVROOT/home). You create files called listname.catalog and register them in site.catalog in order to provide access to them. Please be aware that there are major differences between the way files are registered on VM and workstation systems as many list owners use (or are used to) 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 LSVROOT/home directory (create "site.catalog" if it does not exist; L-Soft does not ship it with the software). Do not modify the "system.catalog" file, as it is part of LISTSERV and may be replaced when you apply software updates; however, site.catalog is formatted identically to system.catalog. Here is what a typical "site.catalog" entry for a file looks like: MY.FILE /aaa/bbb/my.file 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 is case-insensitive and must contain one and only one period (in other words, all files served by LISTSERV must have a file name and file extension separated by a "." character). It is recommended that this identifier consist of a filename of no more than 13 characters and a file extension of no more than 15 characters. For instance VERYLONGFILENAME.VERYLONGFILEEXTENSION /aaa/bbb/my.file XXX YYY will work, but the display of this name in the output of an INDEX command will look like this: * filename filetype GET PUT -fm lrecl nrecs date time * -------- -------- --- --- --- ----- ----- ---------- -------- TEST CATALOG ALL OWN V 73 6 1998-02-18 11:18:31 VERYLONGFILENAME VERYLONGFILEEXTENSION ALL CTL V 39 3 1998-04-09 08:48:25 PEERS NAMES ALL LMC V 108 1681 1998-01-13 20:01:20 The second item, "/aaa/bbb/my.file", is the name LISTSERV will use for the actual UNIX file. 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. This item should be typed in lower case. Note: if you are upgrading from LISTSERV 1.8a or 1.8b to 1.8c or later, the preceding represents a change in the format of site.catalog entries. For compatibility, the old style entries are also acceptable. Note that if you are not creating special subdirectories for file archives and they will reside in the LSVROOT/home directory, you can simplify the site.catalog entry by using "A" instead of the full path, e.g.: MY.FILE my.file.A XXX YYY If you are running a large production server, however, this is not advised; it is much better to create separate directories for each list and put archive files belonging to each list in those directories rather than to store them all in the LSVROOT/home directory. 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 /pub/my.file 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. NOTE CAREFULLY that you cannot use the VM-specific FAC codes PRV or OWN under the unix version of LISTSERV. You MUST use the PRIVATE(xxx) or OWNER(xxx) FACs from the list above (and you MUST specify the listname) or the outcome will not be what you expect. 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. For more information on running the LISTSERV file archive server on your machine, including how to set up sub-catalogs, please consult chapter 8 of the Site Manager's Operations Manual for LISTSERV, available from L-Soft's ftp and World Wide Web sites. +==========================================+ | 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 the Makefile (if necessary), changing the BINDIR, LSVROOT and LSVSPOOL macros to point to the appropriate directories. * Enter "make mailer" to compile the sendmail interface, "lsv_amin", and enter "make lcmd" to build the command interface utility "lcmd". If you don't want to use the precompiled lsv binary, enter "make server" to make the LISTSERV server "lsv". You can make all three of them with "make all" if you prefer. * Copy the file go.user.sample to go.user, edit go.user, 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. * Ensure that you have set file and directory permissions in such a way that lsv_amin and the 'listserv' user have read/write/execute authority where needed. This is the most common problem reported by evaluation kit users. * To start the LISTSERV server, 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 server. Please refer to the "List creation" section of this guide for instructions on how to do so. +==================================================================+ | Installing the LISTSERV web archive and administration interface | +==================================================================+ 1. Copy the 'wa' executable from your source scratch directory to the CGI script directory for your web server. You can call it something else, but a short name will help keep the HTML documents small! Note that you need to make 'wa' run suid listserv in order to allow it to access LISTSERV archive files (the correct permissions for 'wa' should be 4755 and it should be owned by 'listserv'). 2. Create a subdirectory on your web server to contain the various files LISTSERV will be creating. You should not use your main directory as LISTSERV will create quite a few files! The suggested name is 'archives'. 3. Create a subdirectory on your web server to contain the various files LISTSERV will be creating for the web archive interface. The suggested name (and the name LISTSERV will expect by default) for the subdirectory you will create in this step is 'archives'. For a unix server running httpd or Apache it might be /usr/local/etc/httpd/htdocs/archives . Please note the following IMPORTANT restrictions carefully: - Do not simply use your main HTML documents directory as LISTSERV will create quite a few files. It is much more orderly to keep the web archive interface's files and subdirectories in their own place in any case. - Do not use the directory you keep the list's notebook archives in for this purpose. Notebook archives should always be kept separate from the web interface, preferably in a completely separate directory hierarchy. - Corollary to the above: Do not set the Notebook= keyword for any list so that the list's notebook archives are kept in the subdirectory used by the web archive interface for the list. 4. Create a world-readable file called /etc/lsv-wa.config with the following two statements: PATH xxx URL yyy where 'xxx' is the absolute path to the directory you've just created in #3 and 'yyy' is the URL to this directory (preferably relative). For instance: PATH /usr/local/etc/httpd/htdocs/archives URL /archives This file is required in order for the 'wa' script to be able to find these two resources. 5. Modify LISTSERV's configuration to add two variables, as follows: * WWW_ARCHIVE_CGI is the relative URL that leads to the CGI script you have just installed. Typically this will be something like '/cgi- bin/wa' or '/scripts/wa'. This is a URL, not an OS path name. * WWW_ARCHIVE_DIR is the full path name to the directory you created in step 3. * Under unix, don't forget to export! Add export WWW_ARCHIVE_CGI export WWW_ARCHIVE_DIR at the end of your go.user file before you save it. 6. For each list that you want accessible through the web interface, you must create a subdirectory in the directory you created in step 3, named like the list. For instance, if you create 'archives/xyz-l', the list XYZ-L will be accessible through the interface. Note that only lists with public archives are ever made accessible, for security reasons. Reboot LISTSERV. It should create a file accessible with the URL http://localhost/archives/index.html, and from there you should be able to access all the postings. Complete information on installing the Web Archive Interface is contained in chapter 5 of the Site Manager's Operations Manual. +======================================+ | Upgrading your LISTSERV installation | +======================================+ Upgrading LISTSERV is almost as simple as installing it. Simply follow these steps: 1. First, install the new LAK onto your old installation, following the instructions that come with the LAK. Send LISTSERV a "SHOW LICENSE" command after restarting LISTSERV to ensure that the new LAK has been installed properly. 2. Back up the entire LISTSERV directory hierarchy (just in case). 3. Stop LISTSERV. If you have LISTSERV set up to respawn itself, be sure to bring LISTSERV to a complete stop. 4. Get the current unix evaluation kit (or Lite kit, depending on your installation) for your brand of unix from ftp.lsoft.com . If you are upgrading a LISTSERV Classic installation, or going from LISTSERV Lite to LISTSERV Classic, be sure to download common.tar.Z as well as the `uname`.tar.Z! This is very important as the common files also change from version to version. LISTSERV Lite installations do not need (and should not download) common.tar.Z. Note that the LISTSERV Classic evaluation kits are production code limited only by an evaluation LAK, which your production LAK will override. 5. Per the installation instructions above, login as (or su) 'root', uncompress and untar the file(s) into a scratch directory, and then edit the Makefile so that it contains the correct values for your installation. 6. If your scratch directory is not already your current directory, CD into your scratch directory. Touch all of the files you have just unarchived by issuing 'touch *' and 'touch home/*'. This is an important step as the Makefile will not update any production files that are dated later than the files you are trying to update them with. Due to the way most unixes implement 'cp' it is entirely possible to have older production files with dates newer than the files you have downloaded to update them with. 7. Run the update stage of the Makefile by issuing the command 'make update' . This will update all files (including the executables) that have changed from the previous version. Please note that your local settings, lists, archives, and so forth will be preserved. If you have a compiler, note that you should delete or rename the precompiled 'lsv' executable before running 'make update' so that it can be relinked locally. 8. If you have the web archive interface installed, copy 'wa' from the scratch directory to your cgi-bin directory to update it. Currently the Makefile will not do this for you. 9. Restart LISTSERV and send a command to make sure the installation was successful. +===========================+ | Contacting L-Soft Support | +===========================+ At http://www.lsoft.com/lsv-faq.html we've attempted to document a few of the most frequently-asked questions pertaining to installing and running a LISTSERV server. Before writing to our support department for problem resolution, please take a moment to read through the online FAQ and see if your problem is answered there. L-Soft recognizes that the FAQ pages are not going to solve every problem you may face. We are always willing to help diagnose and correct problems you may be having with your registered LISTSERVr server. To that end, please note the following when you write to L-Soft with a problem report: 1. Please make the subject line of your report indicative of the problem, and in particular the product with which you are having a problem. A subject like "Problem posting to moderated LISTSERV list" is much more useful to us than "Help me please!" 2. Include any appropriate log entries. LISTSERV keeps logs of everything it does when you are running it in the background (i.e., with 'go bg', and without a log excerpt it is often impossible to determine what caused a given error. 3. If LISTSERV dumps core, please run the debugger on the core file (see question I.3 in the LISTSERV support FAQ) and include the results. 4. Always send a copy of your site configuration file (with the passwords XXX'ed out). 5. Send along anything else that you think might be helpful in diagnosing the problem. If you are running an evaluation version of our software, please join the evaluation users' list, LSTSRV-E@PEACH.EASE.LSOFT.COM, and send your trouble reports there. If you are running LISTSERV Lite, please join the LISTSERV-LITE mailing list, LISTSERV-LITE@PEACH.EASE.LSOFT.COM, and send your trouble reports there. If your server is registered and has paid-up maintenance, you may send problems to SUPPORT@LSOFT.COM for a quick reply. +==========================================+ | Documentation and where to get more help | +==========================================+ You should be aware that there are several documentation files included with LISTSERV. They are located in the ~listserv/home directory by default and include the following: listserv.memo A General Introduction to LISTSERV listpres.memo A presentation of LISTSERV for the general user listownr.memo A List Owner's Manual for LISTSERV listkeyw.memo A manual of the various list header keywords and what they do listall.refcard A quick reference card for LISTSERV commands L-Soft provides formal documentation in both online formats and downloadable word-processing formats at the URL http://www.lsoft.com/manuals/. There are several mailing lists dedicated to the support of LISTSERV. LSTSRV-L@PEACH.EASE.LSOFT.COM for LISTSERV maintainers and interested list owners LSTOWN-L@PEACH.EASE.LSOFT.COM for LISTSERV list owners LSTSRV-E@PEACH.EASE.LSOFT.COM for LISTSERV evaluation kit users To subscribe to any of these lists, send mail to LISTSERV@LISTSERV.NET with the following command in the body of the message: SUBSCRIBE listname Your Name ------------------------------------------------------------------------------ LISTSERV is a registered trademark licensed to L-Soft international, Inc. LSMTP is a registered trademark of L-Soft international, Inc. ListPlex is a registered service mark of L-Soft international, Inc. EASE and CATALIST are service marks of L-Soft international, Inc. L-SOFT is a trademark of L-Soft international. All other trademarks, both marked and not marked, are the property of their respective owners. ------------------------------------------------------------------------------