Install Apache Tomcat 6 CentOS
Install Apache Tomcat 6 CentOS
We will also show how to run Tomcat as a service, create a start/stop script, and configure Tomcat to run under a non-
root user.
This post below will work with any Tomcat 6.x version, but I have been keeping it updated to keep the links consistent
and to make it as "copying-and-paste" as possible.
If you are looking for our tutorial on installing Tomcat 7 on CentOS/RHEL, you can find it here.
This installation of Tomcat 6.0.32 was done on CentOS 5.5, but any CentOS 5.x should work, as well as RHEL and Fedora.
If you do not already have the Java Development Kit (JDK) installed on your machine, you will need to download and
install the required JDK for your platform.
If you do have the JDK installed, you can skip to: Step 2: Download and Install the Tomcat 6.0.32:
I'm using the latest, which is JDK 6, update 24. The JDK is specific to 32 and 64 bit versions.
Download the appropriate JDK and save it to a directory. I'm saving it to /root.
Change to the /usr/java directory we created and install the JDK using 'sh /opt/jdk-6u24-linux-x64.bin'
To set it for your current session, you can issue the following from the CLI:
To set the JAVA_HOME for users, we add below to the user ~/.bashrc or ~/.bash_profile of the user. We can also add it
/etc/profile and then source it to give to all users.
JAVA_HOME=/usr/java/jdk1.6.0_24
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
Once you have added the above to ~/.bash_profile or ~/.bashrc, you should log out, then log back in and check that the
JAVA_HOME is set correctly.
/usr/java/jdk1.6.0_24
Before proceeding, you should verify the MD5 Checksum for your Tomcat download (or any other download).
Since we saved the Tomcat download to /root/apache-tomcat-6.0.32.tar.gz, we'll go to the /root directory and use the
md5sum command.
082a0707985b6c029920d4d6d5ec11cd
Compare the output above to the MD5 Checksum provided by the Apache Tomcat MD5 page and insure that they match
exactly. (There is also a link to display the MD5 checksum located just to the right off the download link).
Now, move (mv) or copy (cp) the file to the /usr/share directory:
Change to the /usr/share directory and unpack the file using tar -xzf:
At this point, you could start Tomcat via the Tomcat bin directory using the Tomcat startup.sh script located at
/usr/share/apache-tomcat-6.0.32/bin.
We will now see how to run Tomcat as a service and create a simple Start/Stop/Restart script, as well as to start Tomcat
at boot.
Change to the /etc/init.d directory and create a script called 'tomcat' as shown below.
#!/bin/bash
# description: Tomcat Start Stop Restart
# processname: tomcat
# chkconfig: 234 20 80
JAVA_HOME=/usr/java/jdk1.6.0_24
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
CATALINA_HOME=/usr/share/apache-tomcat-6.0.32
case $1 in
start)
sh $CATALINA_HOME/bin/startup.sh
;;
stop)
sh $CATALINA_HOME/bin/shutdown.sh
;;
restart)
sh $CATALINA_HOME/bin/shutdown.sh
sh $CATALINA_HOME/bin/startup.sh
;;
esac
exit 0
The above script is simple and contains all of the basic elements you will need to get going.
As you can see, we are simply calling the startup.sh and shutdown.sh scripts located in the Tomcat bin directory
(/usr/share/apache-tomcat-6.0.32/bin).
You can adjust your script according to your needs and, in subsequent posts, we'll look at additional examples.
We now use the chkconfig utility to have Tomcat start at boot time. In my script above, I am using chkconfig: 244 20 80.
2445 are the run levels and 20 and 80 are the stop and start priorities respectively. You can adjust as needed.
Verify it:
Start Tomcat:
Stop Tomcat:
We should review the Catalina.out log located at /usr/share/apache-tomcat-6.0.32/logs/catalina.out and check for any
errors.