Section 1 Things to consider before installation
LISTSERV for Unix is available for the operating systems listed here: LISTSERV Supported Operating Systems.
1.1 Distribution file change from .bin.Z to .bin.gz
All LISTSERV for Unix distribution kits built since December, 2018, are compressed with gzip(1), and have extensions like .tar.gz and .bin.gz. This should not cause a problem for our customers as the compress(1) utility formerly used is nearly extinct and gzip(1) is readily available for our supported unix platforms. The main difference is that the distribution kits are significantly smaller due to the superior compression algorithm found in gzip(1).
1.2 LDAP Support is Required
LISTSERV requires that LDAP support be installed on your machine, whether or not you use LISTSERV's LDAP features. For Linux servers, this may not be an issue, as OpenLDAP is generally installed by most distributions by default. For other unix variants, your mileage may vary.
Note: The config.sh installer will try to identify whether or not your machine has LDAP support before allowing you to add any functionality that requires relinking.
If LDAP is not installed, you may see errors like this at run time:
[root@listserv listserv]# ../go bg
> Starting LISTSERV as a background process
[root@listserv listserv]# ./lsv: error while loading shared libraries:
libldap-2.2.so.7: cannot open shared object file: No such file or directory
In addition, attempting to re-link the 'lsv' executable manually (i.e., from the Makefile) without having LDAP support installed on the machine will result in compiler errors similar to the following:
ld: 0711-317 ERROR: Undefined symbol: .ldap_next_entry
ld: 0711-317 ERROR: Undefined symbol: .ldap_first_entry
ld: 0711-317 ERROR: Undefined symbol: .ldap_first_attribute
ld: 0711-317 ERROR: Undefined symbol: .ldap_next_attribute
ld: 0711-317 ERROR: Undefined symbol: .ldap_get_values_len
ld: 0711-317 ERROR: Undefined symbol: .ldap_value_free_len
ld: 0711-317 ERROR: Undefined symbol: .ldap_memfree
ld: 0711-317 ERROR: Undefined symbol: .ber_free
ld: 0711-317 ERROR: Undefined symbol: .ldap_msgfree
ld: 0711-317 ERROR: Undefined symbol: .ldap_search_s
ld: 0711-317 ERROR: Undefined symbol: .ldap_unbind
ld: 0711-317 ERROR: Undefined symbol: .ldap_initialize
ld: 0711-317 ERROR: Undefined symbol: .ldap_set_option
ld: 0711-317 ERROR: Undefined symbol: .ldap_bind_s
ld: 0711-317 ERROR: Undefined symbol: .ldap_err2string
and any resulting 'lsv' will not be executable.
Note: Under newer distributions of Linux, it may be necessary to relink LISTSERV with the default OpenLDAP libraries. We currently link against OpenLDAP version 2.4.
1.3 Classic Distribution vs. Lite Distribution
There is no difference between the distributions except the license shipped with them. The Classic kits ship with an evaluation LAK for Classic that expires in December of the current year. Lite kits ship with a permanent Lite Free Edition LAK.
1.4 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 <firstname.lastname@example.org> 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.
At this time you should create the "listserv" userid according to your usual procedure for creating new user accounts.
1.5 Deciding Where LISTSERV Resides
For most purposes it is sufficient to install LISTSERV under the "listserv" user's root directory, that is, the directory you arrive in by issuing the command cd ~listserv. Under most unix platforms supported by L-Soft, the absolute path is typically /home/listserv.
If it is preferred to install LISTSERV in a different location, determine what that location will be.
In either case, you will need to know the absolute path to the installation directory when you run the configuration script.
1.6 Configuring 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. You will need to gather this information before you start.
1.6.1 Determining the NODE Setting
The NODE setting is the fully-qualified domain name as registered in DNS for the machine LISTSERV is running on, and is the hostname by which LISTSERV will always identify itself when it sends mail out. This is something like LISTSERV.YOURDOMAIN.COM. It must be a fully-qualified domain name (FQDN) and it must map to an A or MX record in your domain's DNS service. While it is possible to use a bracketed IP (eg, [10.0.0.24]) for testing purposes, as noted above the use of bracketed IPs in production is not supported and not recommended.
1.6.2 Determining who Administers the Server
You must provide a space-separated list of email@example.com type email addresses belonging to people who have authority to manage LISTSERV--specifically the people who are allowed to create lists, but also who have global authority on the server to look at lists, modify list headers, and so forth. There are some advanced options for this setting but for right now you will probably just want to insert your own email address so that you can test the server. You can always go back to add more administrators by editing the go.user configuration file and adding more space-separated entries to the POSTMASTER= variable setting.
Note: A LISTSERV administrator should NEVER be LISTSERV@ anywhere or POSTMASTER@ anywhere. In fact, a LISTSERV administrator address should never contain the string "listserv" to the left of the @ sign. These userids are reserved and mean specific things to LISTSERV. If you need to use a generic name for a postmaster account, it is recommended that you use something like "listmaster" or "lstmaint" instead.
1.6.3 Determining Where to Install the Web Archive and Administration Interface
LISTSERV cannot use a remote web server for its web archive and administration interface. The web server MUST be installed on the same machine with LISTSERV.
Normally the locations for the various parts of the web interface are dependent on how you have set up your web server. You need to know:
- The absolute disk path to your web server's cgi-bin (executable scripts) directory.
This is the directory normally reached by the relative URL /cgi-bin . A common absolute path to this directory is /var/www/cgi-bin , which the installation script uses as a default. Your web server may have been installed with its cgi-bin directory in a different place, or with a different name; so it is imperative that you verify the absolute path that leads to the executable script directory on your web server. The 'wa' CGI program used for the web interface is installed in this directory.
- WWW_ARCHIVE_CGI - The (preferably relative) URL that executes the 'wa' cgi program.
This is normally /cgi-bin/wa .
- The base URL (preferably relative) of your web-enabled archives directory.
This is normally /archives . This points to the directory where LISTSERV will write the various HTML files needed for the web archive and administration interface.
- WWW_ARCHIVE_DIR - The absolute disk path of the directory that corresponds to the base URL of your web-enabled archives.
This is the directory normally reached by the relative URL /archives . A common absolute path to this directory is /var/www/html/archives . Again, your webserver may have been installed with its root content directory in a different place, so it is likewise imperative that you verify this absolute path as well.