Note: These instructions were written for LabKey Server v2.3, released in 2007, so they are not directly applicable to the current release of LabKey Server. They are intended only as an example installation procedure. Use this topic in conjunction with the manual installation documentation: Install LabKey Manually. If you experience any problems, please send us a message on the Support Forum
This page provides an example of how to perform a complete installation of LabKey's CPAS Application on Linux.
Items installed via these instructions:
CPAS requires the use of Sun Java and GCJ is not supported.
To install Sun Java, you will need to install two packages:
root@<YourServerName> Download# chmod +x jdk-6u3-linux-i586-rpm.bin
root@<YourServerName> Download# ./jdk-6u3-linux-i586-rpm.bin
...
This package installs both the java software and the Sun JavaDB software. You do not need the JavaDB software, so you should remove it.
root@<YourServerName. Download# rpm --erase sun-javadb-client sun-javadb-common
sun-javadb-core sun-javadb-demo sun-javadb-docs sun-javadb-javadoc
Now download and install the compat rpm from JPackage:
root@<YourServerName. Download# wget
http://mirrors.dotsrc.org/jpackage/5.0/generic/non-free/RPMS/java-1.6.0-sun-compat-1.6.0.03-1jpp.i586.rpm
root@<YourServerName> Download# rpm --install java-1.6.0-sun-compat-1.6.0.03-1jpp.i586.rpm
Test to make sure this worked:
root@<YourServerName> Download# alternatives --config java
Two programs provide 'java':
Selection Command
-----------------------------------------------
1 /usr/lib/jvm/jre-1.5.0-gcj/bin/java
*+ 2 /usr/lib/jvm/jre-1.6.0-sun/bin/java
Press "enter" to keep the current selection(+), or type a selection number:
root@<YourServerName> Download# java -version
java version "1.6.0_03"
Java(TM) SE Runtime Environment (build 1.6.0_03-b05)
Java HotSpot(TM) Server VM (build 1.6.0_03-b05, mixed mode)
root@<YourServerName> Download#
This shows that the installation was successful.
The last step is to make sure that the user who will be executing Tomcat has JAVA_HOME set. For the both the root user and the tomcat user you can do the following:
root@<YourServerName> LabKey2.3-7771-bin# vi ~/.bash_profile
[added]
JAVA_HOME=/usr/lib/jvm/java-1.6.0-sun
CATALINA_HOME=/usr/local/apache-tomcat-5.5.25
CATALINA_OPTS=-Djava.awt.headless=true
export CATALINA_OPTS
export JAVA_HOME
export CATALINA_HOME
root@<YourServerName> Download# wget
http://apache.mirrors.redwire.net/tomcat/tomcat-5/v5.5.25/bin/apache-tomcat-5.5.25.tar.gz
root@<YourServerName> Download# cd /usr/local
root@<YourServerName> local# tar xzf ~/Download/apache-tomcat-5.5.25.tar.gz
root@<YourServerName> local# cd apache-tomcat-5.5.25/
root@<YourServerName> apache-tomcat-5.5.25# ls
bin common conf LICENSE logs NOTICE RELEASE-NOTES RUNNING.txt server shared temp webapps work
root@<YourServerName> ~# adduser -s /sbin/nologin tomcat
root@<YourServerName> ~# su - tomcat
tomcat@<YourServerName> ~$ vi .bashrc
JAVA_HOME=/usr/lib/jvm/java-1.6.0-sun
CATALINA_HOME=/usr/local/apache-tomcat-5.5.25
CATALINA_OPTS=-Djava.awt.headless=true
export CATALINA_OPTS
export JAVA_HOME
export CATALINA_HOME
tomcat@<YourServerName> ~$ exit
logout
Enabled Access Logging on the server:
root@<YourServerName> ~# vi /usr/local/apache-tomcat-5.5.25/conf/server.xml
Change:
<!--
<Valve className="org.apache.catalina.valves.FastCommonAccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
-->
<Valve className="org.apache.catalina.valves.FastCommonAccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="combined" resolveHosts="false"/>
root@<YourServerName> ~# cd /usr/local/
root@<YourServerName> /usr/local# sudo tar xzf /usr/local/apache-tomcat-5.5.25/bin/jsvc.tar.gz
Note: You need to build this package. In order to do so, you will need GCC and Autoconf. This server has both already installed.
root@<YourServerName> /usr/local# cd /usr/local/jsvc-src
root@<YourServerName> /usr/local# sh support/buildconf.sh
root@<YourServerName> /usr/local# chmod +x configure
root@<YourServerName> /usr/local# ./configure
...
root@<YourServerName> /usr/local# make
...
We see that the compile was successful.
root@<YourServerName> /usr/local# cat vi /etc/init.d/tomcat5.sh
#!/bin/sh
##############################################################################
#
# Copyright 2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
##############################################################################
#
# Small shell script to show how to start/stop Tomcat using jsvc
# If you want to have Tomcat running on port 80 please modify the server.xml
# file:
#
# <!-- Define a non-SSL HTTP/1.1 Connector on port 80 -->
# <Connector className="org.apache.catalina.connector.http.HttpConnector"
# port="80" minProcessors="5" maxProcessors="75"
# enableLookups="true" redirectPort="8443"
# acceptCount="10" debug="0" connectionTimeout="60000"/>
#
# That is for Tomcat-5.0.x (Apache Tomcat/5.0)
#
# chkconfig: 3 98 90
# description: Start and Stop the Tomcat Server
#
#Added to support labkey
PATH=$PATH:/usr/local/labkey/bin
export PATH
#
# Adapt the following lines to your configuration
JAVA_HOME=/usr/lib/jvm/java-1.6.0-sun
CATALINA_HOME=/usr/local/apache-tomcat-5.5.25
DAEMON_HOME=/usr/local/jsvc-src
TOMCAT_USER=tomcat
# for multi instances adapt those lines.
TMP_DIR=/var/tmp
PID_FILE=/var/run/jsvc.pid
CATALINA_BASE=/usr/local/apache-tomcat-5.5.25
CATALINA_OPTS="-Djava.library.path=/home/jfclere/jakarta-tomcat-connectors/jni/native/.libs"
CLASSPATH= $JAVA_HOME/lib/tools.jar: $CATALINA_HOME/bin/commons-daemon.jar: $CATALINA_HOME/bin/bootstrap.jar
case "$1" in
start)
#
# Start Tomcat
#
$DAEMON_HOME/jsvc -user $TOMCAT_USER -home $JAVA_HOME -Dcatalina.home=$CATALINA_HOME -Dcatalina.base=$CATALINA_BASE -Djava.io.tmpdir=$TMP_DIR -wait 10 -pidfile $PID_FILE -outfile $CATALINA_HOME/logs/catalina.out -errfile '&1' $CATALINA_OPTS -cp $CLASSPATH org.apache.catalina.startup.Bootstrap
#
# To get a verbose JVM
#-verbose # To get a debug of jsvc.
#-debug exit $?
;;
stop)
#
# Stop Tomcat
#
$DAEMON_HOME/src/native/unix/jsvc -stop -pidfile $PID_FILE org.apache.catalina.startup.Bootstrap
exit $?
;;
*)
echo "Usage Tomcat5.sh start/stop"
exit 1;;
esac
<YourServerName> /usr/local# chkconfig --add tomcat5
root@<YourServerName> Download# rpm -q -a | grep postgres
postgresql-8.2.5-1.fc7
postgresql-libs-8.2.5-1.fc7
postgresql-server-8.2.5-1.fc7
postgresql-python-8.2.5-1.fc7
Here, we do not use the postgres user as the user to connect to the database. Instead, we create a new database super-user role named "tomcat." This means we need:
root@<YourServerName> Download# su - postgres
postgres@<YourServerName> ~# /usr/bin/createuser -P -s -e tomcat
Enter password for new role:
Enter it again:
CREATE ROLE "tomcat" PASSWORD 'LabKey678' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN;
CREATE ROLE
postgres@<YourServerName> ~# createlang -d template1 PLpgsql
In order to get around the lack of ident, we make "password" the authentication method for all local connections (i.e., connections coming from the localhost). See http://www.postgresql.org/docs/8.2/static/auth-methods.html for more information on authentication methods.
root@<YourServerName> ~# vi /var/lib/pgsql/data/pg_hba.cfg
Change:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all ident sameuser
# IPv4 local connections:
host all all 127.0.0.1/32 ident sameuser
# IPv6 local connections:
host all all ::1/128 ident sameuser
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all ident sameuser
# IPv4 local connections:
host all all 127.0.0.1/32 password
# IPv6 local connections:
host all all ::1/128 ident sameuser
# join_collapse_limit = 8
to
join_collapse_limit = 10
If you do not do this step, you may see the following error when running complex queries: org.postgresql.util.PSQLException: ERROR: failed to build any 8-way joins
root@<YourServerName> ~# /etc/init.d/postgresql start
Download the X!Tandem files using subversion:
root@<YourServerName> ~# cd Download
root@<YourServerName> Download# mkdir svn
root@<YourServerName> Download# cd svn
root@<YourServerName> svn# svn checkout --username cpas --password cpas
https://hedgehog.fhcrc.org/tor/stedi/tags/tandem_2007-07-01/
Error validating server certificate for 'https://hedgehog.fhcrc.org:443':
- The certificate is not issued by a trusted authority. Use the
fingerprint to validate the certificate manually!
Certificate information:
- Hostname: hedgehog.fhcrc.org
- Valid: from Jun 22 14:01:09 2004 GMT until Sep 8 14:01:09 2012 GMT
- Issuer: PHS, FHCRC, Seattle, Washington, US
- Fingerprint: d8:a6:7a:5a:e8:81:c0:a0:51:87:34:6d:d1:0d:66:ca:22:09:9e:1f
(R)eject, accept (t)emporarily or accept (p)ermanently? p
....
Now that we have the files, we need to build and install the files.
The first thing to do is check which version of G++ the server is running. If you are running G++ v4.x, you need to make a modifications to the make file before you build. Note: A bug has been submitted to make it unnecessary to make this change, but you will still need to make these changes until the fix is submitted.
root@<YourServerName> svn# g++ --version
g++ (GCC) 4.1.2 20070925 (Red Hat 4.1.2-27)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
This shows that the server is running v4.x. Now we make the change:
root@<YourServerName> svn# cd tandem_2007-07-01/src
root@<YourServerName> src# vi Makefile
[change]
CXXFLAGS = -O2 -DGCC -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPLUGGABLE_SCORING
#CXXFLAGS = -O2 -DGCC4 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPLUGGABLE_SCORING
[to]
#CXXFLAGS = -O2 -DGCC -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPLUGGABLE_SCORING
CXXFLAGS = -O2 -DGCC4 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPLUGGABLE_SCORING
Now run make:
root@<YourServerName> src# make
....
Copy the tandem binary to the server path
root@<YourServerName> src# cp ../bin/tandem.exe /usr/local/labkey/bin
First, download the software:
root@<YourServerName> Download# wget
http://downloads.sourceforge.net/sashimi/TPP_v3.4.2_SQUALL.zip?modtime=1207909790&big_mirror=0
Next, unpack the software:
root@<YourServerName> Download# unzip TPP_v3.4.2_SQUALL.zip
root@<YourServerName> Download# cd trans_proteomic_pipeline/src
It is necessary to change the Makefile.incl file to specify the install path and several options. These are specified at: https://www.labkey.org/wiki/home/Documentation/page.view?name=thirdPartyCode
We choose to the install the software at /usr/local/labkey/bin/tpp:
root@<YourServerName> src# vi Makefile.inc
TPP_ROOT=/tpp/bin/tpp/
TPP_ROOT=/usr/local/labkey/bin/tpp/
Add to the bottom of the file:
XML_ONLY=1
TPP requires libboost development packages to be installed to successfully build.
root@<YourServerName> src# yum list available boost*
Available Packages
boost-devel-static.x86_64 1.33.1-13.fc7 fedora
boost-doc.x86_64 1.33.1-13.fc7 fedora
root@<YourServerName> src# yum install boost-devel-static.x86_64
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package boost-devel-static.x86_64 0:1.33.1-13.fc7 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
boost-devel-static x86_64 1.33.1-13.fc7 fedora 1.7 M
Transaction Summary
=============================================================================
Install 1 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 1.7 M
Is this ok [y/N]: y
Downloading Packages:
(1/1): boost-devel-static 100% |=========================| 1.7 MB 00:01
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: boost-devel-static ######################### [1/1]
Installed: boost-devel-static.x86_64 0:1.33.1-13.fc7
Complete!
There is a bug in the TPP makefile for 64bit machines. Thus you need to change the make file:
root@<YourServerName> src# vi Makefile
#
# cygwin or linux?
#
ifeq (${OS},Windows_NT)
OSFLAGS= -D__CYGWIN__
GD_LIB= /lib/libgd.a
BOOST_REGEX_LIB= /lib/libboost_regex-gcc-mt.a
else
OSFLAGS= -D__LINUX__
GD_LIB= -lgd
BOOST_REGEX_LIB= /usr/libboost_regex/libboost_regex.a -lpthread
endif
To:
#
# cygwin or linux?
#
ifeq (${OS},Windows_NT)
OSFLAGS= -D__CYGWIN__
GD_LIB= /lib/libgd.a
BOOST_REGEX_LIB= /lib/libboost_regex-gcc-mt.a
else
OSFLAGS= -D__LINUX__
GD_LIB= -lgd
BOOST_REGEX_LIB= /usr/lib64/libboost_regex.a -lpthread
endif
Now run the make file:
[root@<YourServerName> src]# make
.....
After building successfully, the next step is to perform the install
root@<YourServerName> src# make install
# Create Directories
mkdir -p /usr/local/labkey/bin/tpp/
mkdir -p /usr/local/labkey/bin/tpp/bin/
mkdir -p /usr/local/labkey/bin/tpp/schema/
# Copy all source executables and configuration files to their location
cp -f ASAPRatioPeptideParser /usr/local/labkey/bin/tpp/bin/
cp -f ASAPRatioProteinRatioParser /usr/local/labkey/bin/tpp/bin/
cp -f ASAPRatioPvalueParser /usr/local/labkey/bin/tpp/bin/
cp -f Comet2XML /usr/local/labkey/bin/tpp/bin/
cp -f CompactParser /usr/local/labkey/bin/tpp/bin/
cp -f DatabaseParser /usr/local/labkey/bin/tpp/bin/
cp -f EnzymeDigestionParser /usr/local/labkey/bin/tpp/bin/
cp -f InteractParser /usr/local/labkey/bin/tpp/bin/
cp -f LibraPeptideParser /usr/local/labkey/bin/tpp/bin/
cp -f LibraProteinRatioParser /usr/local/labkey/bin/tpp/bin/
cp -f Mascot2XML /usr/local/labkey/bin/tpp/bin/
cp -f PeptideProphetParser /usr/local/labkey/bin/tpp/bin/
cp -f ProteinProphet /usr/local/labkey/bin/tpp/bin/
cp -f ../perl/ProteinProphet.pl /usr/local/labkey/bin/tpp/bin/
cp -f ../perl/TPPVersionInfo.pl /usr/local/labkey/bin/tpp/bin/
cp -f ../perl/SSRCalc3.pl /usr/local/labkey/bin/tpp/bin/
cp -f ../perl/SSRCalc3.par /usr/local/labkey/bin/tpp/bin/
cp -f RefreshParser /usr/local/labkey/bin/tpp/bin/
cp -f MzXML2Search /usr/local/labkey/bin/tpp/bin/
cp -f runperl /usr/local/labkey/bin/tpp/bin/
cp -f Sequest2XML /usr/local/labkey/bin/tpp/bin/
cp -f Out2XML /usr/local/labkey/bin/tpp/bin/
cp -f Sqt2XML /usr/local/labkey/bin/tpp/bin/
cp -f CombineOut /usr/local/labkey/bin/tpp/bin/
cp -f Tandem2XML /usr/local/labkey/bin/tpp/bin/
cp -f xinteract /usr/local/labkey/bin/tpp/bin/
cp -f XPressPeptideParser /usr/local/labkey/bin/tpp/bin/
cp -f XPressProteinRatioParser /usr/local/labkey/bin/tpp/bin/
cp -f Q3ProteinRatioParser /usr/local/labkey/bin/tpp/bin/
cp -f spectrast /usr/local/labkey/bin/tpp/bin/
cp -f plotspectrast /usr/local/labkey/bin/tpp/bin/
cp -f runsearch /usr/local/labkey/bin/tpp/bin/
cp -f dtafilter /usr/local/labkey/bin/tpp/bin/
cp -f readmzXML.exe /usr/local/labkey/bin/tpp/bin/ # consider removing .exe for linux builds
cp -f dta2mzxml /usr/local/labkey/bin/tpp/bin/
cp -f out2summary /usr/local/labkey/bin/tpp/bin/ # to be retired in favor of out2xml
cp -f ../schema/msms_analysis3.dtd /usr/local/labkey/bin/tpp/schema/
cp -f ../schema/pepXML_std.xsl /usr/local/labkey/bin/tpp/schema/
cp -f ../schema/pepXML_v18.xsd /usr/local/labkey/bin/tpp/schema/
cp -f ../schema/pepXML_v9.xsd /usr/local/labkey/bin/tpp/schema/
cp -f ../schema/protXML_v1.xsd /usr/local/labkey/bin/tpp/schema/
cp -f ../schema/protXML_v3.xsd /usr/local/labkey/bin/tpp/schema/
cp -f ../schema/protXML_v4.xsd /usr/local/labkey/bin/tpp/schema/
chmod g+x /usr/local/labkey/bin/tpp/bin/*
chmod a+r /usr/local/labkey/bin/tpp/schema/*
There is a bug in the TPP make script. The bug does not copy the batchcoverage executable over to the bindir.
root@<YourServerName> src# cd ..
root@<YourServerName> trans_proteomic_pipeline# ls
CGI COVERAGE extern HELP_DIR HTML images perl README schema src TESTING XML_sample_files.tgz
root@<YourServerName> trans_proteomic_pipeline# cd COVERAGE/
root@<YourServerName> COVERAGE# ls
batchcoverage batchcoverage.dsp batchcoverage.vcproj Coverage.h main.o Protein.h
batchcoverage2003.sln batchcoverage.dsw constants.h Coverage.o Makefile sysdepend.h
batchcoverage2003.vcproj batchcoverage.sln Coverage.cxx main.cxx Protein.cxx
root@<YourServerName> COVERAGE# cp batchcoverage /usr/local/labkey/bin/tpp/bin/
The last step is to ensure that the TPP bindir is located on PATH env variable for the user that runs the tomcat server. In this case the user=tomcat. THIS IS A VERY IMPORTANT STEP.
root@<YourServerName> COVERAGE# vi ~tomcat/.bashrc
PATH=$PATH:$HOME/bin
PATH=$PATH:$HOME/bin:/usr/local/labkey/bin/tpp/bin
Note: Starting in LabKey Server version 13.3, the JAR distribution directories /common-lib and /server-lib were consolidated to a single directory /tomcat-lib. The destination for these JARs was changed to TOMCAT_HOME/lib. If you are installing 13.3 or later, modify the commands below accordingly.
root@<YourServerName>Download# wget
https://www.labkey.org/download/2.3/LabKey2.3-7771-bin.tar.gz
root@<YourServerName> Download# tar xzf LabKey2.3-7771-bin.tar.gz
root@<YourServerName> Download# cd LabKey2.3-7771-bin
root@<YourServerName> LabKey2.3-7771-bin# ls
common-lib labkeywebapp labkey.xml modules README.txt server-lib manual-upgrade.sh
Copy the jars in the common-lib directory the <TOMCAT_HOME>/common/lib:
root@<YourServerName> LabKey2.3-7771-bin# cd common-lib/
root@<YourServerName> common-lib# ls
activation.jar jtds.jar mail.jar postgresql.jar
root@<YourServerName> common-lib# cp *.jar /usr/local/apache-tomcat-5.5.25/common/lib/
Copy the jars in the server-lib directory the <TOMCAT_HOME>/server/lib
root@<YourServerName> common-lib# cd ../server-lib/
root@<YourServerName> server-lib# ls
labkeyBootstrap.jar
root@<YourServerName> server-lib# cp
labkeyBootstrap.jar /usr/local/apache-tomcat-5.5.25/server/lib/
Create the <LABKEY_HOME> directory:
root@<YourServerName> server-lib# mkdir /usr/local/labkey
Copy the labkeywebapp and the modules directory to the <LABKEY_HOME> directory:
root@<YourServerName> server-lib# cd ..
root@<YourServerName> LabKey2.3-7771-bin# ls
common-lib labkeywebapp labkey.xml modules README.txt server-lib manual-upgrade.sh
root@<YourServerName> LabKey2.3-7771-bin# mkdir /usr/local/labkey/labkeywebapp
root@<YourServerName> LabKey2.3-7771-bin# mkdir /usr/local/labkey/modules
root@<YourServerName> LabKey2.3-7771-bin# cp -R labkeywebapp/* /usr/local/labkey/labkeywebapp/
root@<YourServerName> LabKey2.3-7771-bin# cp
-R modules/* /usr/local/labkey/modules/
Copy the labkey.xml file to the <TOMCAT_HOME> directory and make the necessary changes to the file:
root@<YourServerName> LabKey2.3-7771-bin# cp labkey.xml
/usr/local/apache-tomcat-5.5.25/conf/Catalina/localhost/
root@<YourServerName> LabKey2.3-7771-bin# vi
/usr/local/apache-tomcat-5.5.25/conf/Catalina/localhost/labkey.xml
The file was changed to look like this:
<Context path="/labkey" docBase="/usr/local/labkey/labkeywebapp" debug="0"
reloadable="true" crossContext="true">
<Environment name="dbschema/--default--" value="jdbc/labkeyDataSource"
type="java.lang.String"/>
<Resource name="jdbc/labkeyDataSource" auth="Container"
type="javax.sql.DataSource"
username="tomcat"
password="LabKey678"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://localhost/labkey"
maxActive="20"
maxIdle="10" accessToUnderlyingConnectionAllowed="true"/>
<Resource name="jms/ConnectionFactory" auth="Container"
type="org.apache.activemq.ActiveMQConnectionFactory"
factory="org.apache.activemq.jndi.JNDIReferenceFactory"
description="JMS Connection Factory"
brokerURL="vm://localhost?broker.persistent=false&broker.useJmx=false"
brokerName="LocalActiveMQBroker"/>
<Resource name="mail/Session" auth="Container"
type="javax.mail.Session"
mail.smtp.host="localhost"
mail.smtp.user="tomcat"
mail.smtp.port="25"/>
<Loader loaderClass="org.labkey.bootstrap.LabkeyServerBootstrapClassLoader"
useSystemClassLoaderAsParent="false" />
<!-- <Parameter name="org.mule.webapp.classpath" value="C:mule-config"/> -->
</Context>
The final step is to make the tomcat user the owner of all files in <TOMCAT_HOME> and <LABKEY_HOME>:
root@<YourServerName> LabKey2.3-7771-bin# chown -R tomcat.tomcat /usr/local/labkey
root@<YourServerName> LabKey2.3-7771-bin# chown -R tomcat.tomcat /usr/local/apache-tomcat-5.5.25
Now start the CPAS server to test it:
root@<YourServerName> ~# /etc/init.d/tomcat5 start
You can access the CPAS server at
http://<YourServerName>:8080/labkey