Installing Previous Versions of EvergreenEarlier releases of Evergreen are available. Instructions for installing, configuring and testing earlier versions are found below.The next most recent previous release of Evergreen is version 1.4.0.6. The accompanying previous release of OpenSRF
is version 1.0.7.Installing Evergreen 1.4.0.6 On Ubuntu or DebianThis section outlines the installation process for the previous version 1.4.0.6 of Evergreen.In this section you will download, unpack, install, configure and test the Evergreen system, including the Evergreen server and the PostgreSQL database system. You will make several configuration changes and adjustments to the software, including updates to configure the system for your own locale, and some updates needed to work around a few known issues.The following steps have been tested on the x86 (32-bit) and x86-64 (64-bit) architectures. There may be differences between the Desktop and Server editions of Ubuntu. These instructions assume the Server edition.If you are starting with a clean install of Ubuntu or Debian, you are strongly recommended not to install the packaged PostgreSQL server. This can confuse port numbers and system configuration. Evergreen 1.4 requires PostgreSQL 8.2.Installing OpenSRF 1.0.7Evergreen software is integrated with and depends on the Open Service Request Framework (OpenSRF) software system. For further information on installing, configuring and testing OpenSRF, see .Follow the steps outlined in that section and run the specified tests to ensure that OpenSRF is properly installed and configured. Do not continue with any further Evergreen installation steps until you have verified that OpenSRF has been successfully installed.Download and Unpack Evergreen Version 1.4.0.6As the opensrf user, download and extract the latest version of Evergreen. The latest version can be found here: The new directory /home/opensrf/Evergreen-ILS-1.4.0.6 will be created.Install Prerequisites to Build EvergreenIn this section you will install and configure a set of prerequisites that will be used to build Evergreen. In a following step you will actually build the software using the make utility.As the root user, enter the commands show below to build the prerequisites from the software distribution that you just downloaded and unpacked. Remember to replace [distribution] in the example with the keyword corresponding to the actual Linux distribution listed in the "Keywords" figure below.
Update the System Dynamic Library PathAs the root user, you must update the system dynamic library path to make your system recognize the newly installed libraries. Do this by creating the new file /etc/ld.so.conf.d/eg.conf containing two new library paths, then run the command ldconfig to automatically read the file and modify the system dynamic library path:Restart the PostgreSQL ServerIf PostgreSQL is running on the same system as the rest of Evergreen, as the root user you must restart the PostgreSQL server to avoid a problem where the library plperl.so cannot be found. If your PostgreSQL server is running on another system, just skip this step.Configure EvergreenAs the opensrf user, return to the Evergreen build directory and use the configure utility to prepare for the next step of compiling and linking the software:Compile, Link and Install EvergreenIn this step you will actually compile, link and install Evergreen and the default Evergreen Staff Client.As the root user, return to the Evergreen build directory and use the make utility as shown below. The Staff Client will also be automatically built, but you must remember to set the variable STAFF_CLIENT_BUILD_ID to match the version of the Staff Client you will use to connect to the Evergreen server.For further information on manually building the Staff Client, see .Copy the OpenSRF Configuration FilesAs the root user, copy the example OpenSRF configuration files into place. This replaces the configuration files that you set up in a previous step when you installed and tested OpenSRF. You should also create backup copies of the old files for troubleshooting purposes. Finally, change the ownership on the installed files to the opensrf user:Create and Configure PostgreSQL DatabaseAs the postgres user on your PostgreSQL server, create the Evergreen database.In the commands below, remember to adjust the path of the contrib repository to match your PostgreSQL server layout. For example, if you built PostgreSQL from source the path would be /usr/local/share/contrib; if you installed the PostgreSQL 8.2 server packages on Ubuntu 8.04, the path would be /usr/share/postgresql/8.2/contrib/.Create and configure the databaseAs the postgres user on the PostgreSQL system create the PostgreSQL database, then set some internal paths:Where PGSQL_VERSION is your installed PostgreSQL version (e.g. 8.2).Create new Evergreen superuserAs the postgres user on the PostgreSQL system, create the
new database evergreen user and assign a password:
# create superuser 'evergreen' and set the password
su - postgrescreateuser -P -s evergreenEnter password for new role:MYNEWPASSWORDEnter it again:MYNEWPASSWORDWhere MYNEWPASSWORD is the password chosen.Create Database SchemaAs the root user, create the database schema and configure your system with the corresponding database authentication details for the evergreen database user that you created in the previous step.Enter the following commands and replace HOSTNAME, PORT, PASSWORD and DATABASENAME with appropriate values.Where, on most systems, HOSTNAME will be localhost, PORT will be 5432, and PASSWORD and DATABASENAME will be those assigned when PostgreSQL was installed in the previous step.If you are entering the above command on a single line, do not include the \ (backslash) characters. If you are using the bash shell, these should only be used at the end of a line at a bash prompt to indicate that the command is continued on the next line.Evergreen installation - (continued)The remainder of the Evergreen installation procedure is identical to that for installing the latest version of Evergreen. Continue with the instructions found in.Installing OpenSRF 1.0.7 On Ubuntu or DebianThis section describes the installation of the previous version of the Open Service Request Framework (OpenSRF), a major component of the Evergreen server-side software, on Ubuntu or Debian systems. Evergreen software is integrated with and depends on the OpenSRF software system.Follow the steps outlined here and run the specified tests to ensure that OpenSRF is properly installed and configured. Do not continue with any further Evergreen installation steps until you have verified that OpenSRF has been successfully installed.The following steps have been tested on the x86 (32-bit) and x86-64 (64-bit) platforms. OpenSRF 1.0.7 has been tested on Debian Etch (4.0), Debian Lenny, Ubuntu Hardy Heron (8.04), and Ubuntu Intrepid Ibex (8.10).In the following instructions, you are asked to perform certain steps as either the root user, the opensrf user, or the postgres user.Debian -- To become the root user, issue the command su - and enter the password of the root user.Ubuntu -- To become the root user, issue the command sudo su - and enter the password of the root user.To switch from the root user to a different user, issue the command su - USERNAME. For example, to switch from the root user to the opensrf user, issue the command su - opensrf. Once you have become a non-root user, to become the root user again, simply issue the command exit".Add the OpenSRF UserAs the root user, add the opensrf user to the system. The default shell for the new user is automatically set to /bin/bash to inherit a reasonable environment:Download and Unpack Latest OpenSRF VersionAs the opensrf user, download and extract the latest version of OpenSRF. The latest version can be found here: The new directory /home/opensrf/OpenSRF-1.0.7 will be created.Install Prerequisites to Build OpenSRFIn this section you will install and configure a set of prerequisites that will be used to build OpenSRF. In a following step you will actually build the software using the make utility.As the root user, enter the commands show below to build the prerequisites from the software distribution that you just downloaded and unpacked. Remember to replace [DISTRIBUTION] in the example with the keyword corresponding to the actual Linux distribution listed in the "Keywords" figure below.
This will install a number of packages on the system that are required by OpenSRF, including some Perl modules from CPAN. You can say No to the initial CPAN configuration prompt to allow it to automatically configure itself to download and install Perl modules from CPAN. The CPAN installer will ask you a number of times whether it should install prerequisite modules - say Yes.Configure OpenSRFAs the opensrf user, return to the OpenSRF build directory and use the configure utility to prepare for the next step of compiling and linking the software. You can include the and configuration options if you wish to include support for Python and Java, respectively:Compile, Link and Install OpenSRFAs the root user, return to the OpenSRF build directory and use the make utility to compile, link and install OpenSRF:Update the System Dynamic Library PathAs the root user, you must update the system dynamic library path to make your system recognize the newly installed libraries. Do this by creating the new file /etc/ld.so.conf.d/osrf.conf containing a new library path, then run the command ldconfig to automatically read the file and modify the system dynamic library path:Define Public and Private OpenSRF DomainsDefine your public and private OpenSRF domains. For security purposes, OpenSRF uses Jabber domains to separate services into public and private realms. Throughout these instructions, we will use the example domains public.localhost for the public domain and private.localhost for the private domain. On a single-server system, the easiest way to define public and private domains is to define separate host names by adding entries to the file /etc/hosts.As the root user, edit the file /etc/hosts and add the following entries for our example domains:Change File OwnershipsAs the root user, change the ownership of files installed in the directory /openils to the opensrf user:Stop the ejabberd ServiceAs the root user, stop the ejabberd service:If ejabberd reports that it is already stopped, it may have run into a problem starting back at the installation stage. One possible fix is to kill any remaining beam and epmd processes, then edit the configuration file /etc/ejabberd/ejabberd.cfg to hardcode a domain:Edit the ejabberd configurationAs the root user, edit the file /etc/ejabberd/ejabberd.cfg and make the following changes:Change {hosts, ["localhost"]}. to {hosts, ["localhost", "private.localhost", "public.localhost"]}.Change {max_user_sessions, 10}. to {max_user_sessions, 1000}. If you see something like this instead: {access, max_user_sessions, [{10, all}]}., then change it to {access, max_user_sessions, [{1000, all}]}.Change all three occurrences of max_stanza_size to 2000000.Change both occurrences of maxrate to 500000.Comment out the line {mod_offline, []} by placing two % comment signs in front.OpenSRF installation - (continued)The remainder of the OpenSRF installation procedure is identical to that for installing the latest version of OpenSRF. Continue with the instructions found in .Installing PostgreSQLIn production Evergreen systems, the PostgreSQL database server may reside on the same system on which Evergreen is installed or on another standalone system so, by default, PostgreSQL is not automatically installed along with Evergreen. This section details the steps needed to manually install PostgreSQL on a Ubuntu or Debian system.If your PostgreSQL server will be on the same system as your Evergreen software, return to the previous section and follow those instructions. Otherwise, to manually install PostgreSQL on a system, continue with the instructions below.Some Linux distributions, such as Debian Etch (4.0), do not offer PostgreSQL version 8.2 as an installable package. Before you continue, examine the software dependencies listed in to ensure that your Linux distribution supports the required version of PostgreSQL.Install the application "stow" on your system if it is not already installed. Issue the following command as the root user:Download, compile, and install the latest release for PostgreSQL 8.2 (which was version 8.2.12 at the time of this writing). As the root user, follow these steps:Create the new user postgres to run the PostgreSQL processes. As the root user, execute this command:Initialize the database directory and start up PostgreSQL. As the root user, follow these steps:If an error occurs during the final step above, review the path of the home directory for the postgres user. It may be /var/lib/postresql instead of /home/postres.The values of several PostreSQL configuration parameters may be changed for enhanced performance. The following table lists the default values and some suggested updates for several useful parameters:
ZZZ-REVIEWADD CONTENT ON HOW TO UPDATE POSTRESQL PARAMETERSADD CONTENT ON HOW TO UPDATE POSTRESQL PARAMETERS Installing ApacheSecuring Apache (httpd)The main consideration is to secure the directory cgi-bin. The only persons that need access to this directory are Evergreen system administrators. This directory should be restricted by both IP (to those workstations designated as Evergeen Administration systems), and by username/password.ZZZ-REVIEWADD CONTENT ON HOW TO RESTRICT APACHE BY IP AND USERNAME/PASSWORD ADD CONTENT ON HOW TO RESTRICT APACHE BY IP AND USERNAME/PASSWORD A user could add new libraries, re-arrange consortia, or change user groups; or a staff member could access the directory, and change his associated security group to administrative level privileges.ZZZ-REVIEWADD MORE CONTENT FOR APACHE ADD MORE CONTENT FOR APACHE