在centos 5上安装tomcat6服务
# yum install yum-priorities# rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
Install the JPackage Project repository.
# cd /etc/yum.repos.d/
# wget http://jpackage.org/jpackage50.repo
Install Java. We just used the openjdk that available via the repositories but if you prefer Sun JDK the download it and install it.
# yum install java
Install the Tomcat 6 RPM’s
# yum install tomcat6 tomcat6-webapps tomcat6-admin-webapps
Finally lets start up the Tomcat 6 service
# service tomcat6 start
Browser to your newly installed Tomcat 6 Server (remember port 8080)
http://localhost:8080 系统和软件版本为:CentOS5.6, Tomcat6.0.32。具体安装步骤如下:
一,到Apache下载 Tomcat6.0.32(http://apache.mirror.phpchina.com/tomcat/tomcat-6/v6.0.32/bin/apache-tomcat-6.0.32.tar.gz)。
二,解压缩Tomcat文件到/xyx目录下
#tar xvzf apache-tomcat-6.0.32.tar.gz
确认你的目录为/xyx/apache-tomcat-6.0.32
三,测试你的tomcat是不是能够正常运行(确保JAVA_HOME环境变量设置过)
启动
#/xyx/apache-tomcat-6.0.32/start.sh
停止
#/xyx/apache-tomcat-6.0.32/shutdown.sh
四,将Tomcat部署为系统的服务(以jsvc方式运行)
1,解压缩jsvc包(/xyx/apache-tomcat-6.0.32/bin/jsvc.tar.gz)
#tar xvzf jsvc.tar.gz
2,编译jsvc,并测试(假设jdk的安装路径:/usr/java/jdk1.6.0_21)
#cd /xyx/apache-tomcat-6.0.32/bin/jsvc-src
#chmod +x configure
#.configure--with-java=/usr/java/jdk1.6.0_21
#.make
#cp jsvc../
#cp /xyx/apache-tomcat-6.0.32/bin/jsvc-src/native/Tomcat5.sh/etc/init.d/tomcat
编辑刚copy的tomcat文件
#vi /etc/init.d/tomcat
编辑完成后的内容如下:
#!/bin/sh
#
# Startup Script for Tomcat6
#
# chkconfig: - 88 14
# description: Tomcat Daemon
# processname: jsvc
# pidfile: /var/run/jsvc.pid
# config:
#
# Source function library.
. /etc/rc.d/init.d/functions
#
# Adapt the following lines to your configuration
JAVA_HOME=/usr/java/jdk1.6.0_06
CATALINA_HOME=/xyx/apache-tomcat-6.0.32
DAEMON_HOME=$CATALINA_HOME/bin
TOMCAT_USER=tomcat
# for multi instances adapt those lines.
TMP_DIR=$CATALINA_HOME/temp
PID_FILE=/var/run/tomcat.pid
CATALINA_BASE=$CATALINA_HOME
CATALINA_OPTS=
CLASSPATH=\
$JAVA_HOME/lib/tools.jar:\
$CATALINA_HOME/bin/commons-daemon.jar:\
$CATALINA_HOME/bin/bootstrap.jar
start(){
echo starting 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
}
stop(){
echo stopping tomcat ...
$DAEMON_HOME/jsvc \
-stop \
-pidfile $PID_FILE \
org.apache.catalina.startup.Bootstrap
}
status() {
ps ax --width=1000 | grep "rg.apache.catalina.startup.Bootstrap" | awk '{printf $1 " "}' | wc | awk '{print $2}' >/tmp/tomcat_process_count.txt
read line < /tmp/tomcat_process_count.txt
if [ $line -gt 0 ]; then
echo -n "tomcat ( pid "
ps ax --width=1000 | grep "rg.apache.catalina.startup.Bootstrap" | awk '{printf $1 " "}'
echo ") is running..."
else
echo "Tomcat is stopped"
fi
}
case "$1" in
start)
# Start Tomcat
start
exit $?
;;
stop)
# Stop Tomcat
stop
exit $?
;;
restart)
stop
sleep 3
start
exit $?
;;
status)
status
exit $?
;;
*)
echo "Usage: tomcat {start|stop|restart|status}"
exit 1
;;
esac
添加执行用户
#useradd tomcat
确保tomcat用户能够访问tomcat的目录
#chown -R tomcat /xyx/apache-tomcat-6.0.32
#chgrp -R tomcat /xyx/apache-tomcat-6.0.32
#chmod +x /etc/rc.dd/init.d/tomcat
测试是否能启动tomcat
#/etc/rc.d/init.d/tomcat start
#/etc/rc.d/init.d/tomcat stop
将tomcat部署成为自动运行的服务
#chkconfig tomcat on
启动服务
#service tomcat start
查询服务状态
#service tomcat status
停止服务
#service tomcat stop
tomcat6服务脚本(jsvc)
#!/bin/sh#
# Startup script for Tomcat, the Apache Servlet Engine
#
# chkconfig: 345 80 20
# description: Tomcat is the Apache Servlet Engine
# processname: tomcat
# pidfile: /var/run/tomcat.pid
#
# Mike Millson <*******@meritonlinesystems.com>
#
# version 1.02 - Clear work directory on shutdown per John Turner suggestion.
# version 1.01 - Cross between Red Hat Tomcat RPM and Chris Bush scripts
TOMCAT_PROG=tomcat
JAVA_HOME='/usr/java/jdk1.5.0_06'
CATALINA_HOME='/home/tomcat/'
DAEMON_HOME=$CATALINA_HOME/bin/jsvc
TMP_DIR=/var/tmp
CATALINA_OPTS=
CLASSPATH=\
$JAVA_HOME/lib/tools.jar:\
$CATALINA_HOME/bin/commons-daemon.jar:\
$CATALINA_HOME/bin/bootstrap.jar
# if TOMCAT_USER is not set, use tomcat like Apache HTTP server
if [ -z "$TOMCAT_USER" ]; then
TOMCAT_USER="tomcat"
fi
RETVAL=0
# start and stop functions
start() {
echo -n "Starting tomcat: "
chown -R $TOMCAT_USER:$TOMCAT_USER /home/tomcat/*
$DAEMON_HOME \
-user $TOMCAT_USER \
-home $JAVA_HOME \
-Dcatalina.home=$CATALINA_HOME \
-Djava.io.tmpdir=$TMP_DIR \
-Djava.awt.headless=true \
-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 \
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch /var/lock/subsys/tomcat
return $RETVAL
}
stop() {
echo -n "Stopping tomcat: "
PID=`cat /var/run/jsvc.pid`
kill $PID
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f /var/lock/subsys/tomcat /var/run/tomcat.pid
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
# Ugly hack
# We should really make sure tomcat
# is stopped before leaving stop
sleep 5
start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit $RETVAL
页:
[1]