Linux
下配置
jdk+tomcat
操作系统
Redhat as4
所需软件包
jdk-6u4-linux-i586-rpm.bin
apache-tomcat- 6.0.16 .tar.gz
注意:选择用什么包的时候要注意,
jdk
包最好选择较高版本,否则
tomcat
可能无法启动
以本文为例,安装
tomcat6.0
和
5.0
时,如果用的是
jdk1.4
版本则
tomcat
无法启动,而用
jdk1.5
之后的版本就可以
1
、配置环境
字符集、时区配置
1.
设定系统语言环境:
/etc/sysconfig/i18n
为
zh_CN.GBK
#vi /etc/sysconfig/i18n
LANG="zh_CN.GBK"
SUPPORTED="zh_CN.GBK:zh:zh_CN.GB2312:zh:zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
2.
修改字符集设置:
/etc/profile
里面添加
NLS_LANG
设置
#vi /etc/profile
export NLS_LANG='SIMPLIFIED CHINESE_CHINA'.ZHS16GBK
3.
检查服务器的时区与时间是否为正确时区:
China standard Time(CST)
中国标准时间。
#cat /etc/sysconfig/clock
看是否有以下
3
行显示
ZONE="Asia/Shanghai"
UTC=false
ARC=false
如果不是的话则需要做下面的修改步骤
(
或者执行
timeconfig)
:
#mv /etc/localtime /etc/localtime.bak
# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
将时区文件
(/etc/sysconfig/clock)
更改为以下内容:
ZONE=Asia/Shanghai
UTC=false
ARC=false
2
、安装JDK
修改
jdk
权限为可执行
#chmod 755 jdk-6u4-linux-i586-rpm.bin
#./jdk-6u4-linux-i586-rpm.bin
依照提示安装选择
yes
执行安装,一般会自动安装
rpm
包,
默认安装在
/usr/java/
目录下(我下的是
rpm
的,也可以下源码的,安装过程一样,直接就在当前目录下,同样也移动到
/usr/local/termite/
下)
#mv /usr/java/jdk 1.6.0 _04 /usr/local/termite/
#rm �Crf /usr/java/ \\
删除没用目录
#vi /etc/profile
加入下面几行:
JAVA_HOME=/usr/local/termite/jdk 1.6.0 _04
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
PATH=$JAVA_HOME/bin:$PATH:$HOME/bin:$JAVA_HOME/jre/bin
注意:
$JAVA_HOME/bin:
要放在最前面因为这个才是我们安装的
jdk
的路径,开发的程序一般都执行这个路径下的
JDK.
如果不放在最前面,执行的就有可能是系统自带的
JDK
了,有些时候会因为路径错误而报错。
修改
export
这一行,添加:
export JAVA_HOME CLASSPATH PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC
备份源文件
# mv /usr/bin/java /usr/bin/java.bak
# mv /usr/bin/javac /usr/bin/javac.bak
如果没有
javac
则不用此步
注销环境,使环境变量生效(或者执行
source /etc/profile
命令
)
# java
# javac
#java -version
如果
java
和
javac
运行了,说明
java
环境变量配置成功。
3
、安装TOMCAT
#tar zxvf apache-tomcat- 6.0.16 .tar.gz
#mv apache-tomcat- 6.0.16 /usr/local/termite/
运行
tomcat
#/usr/local/termite/apache-tomcat- 6.0.16 /bin/startup.sh
测试
:lynx [url]http://localhost:8080[/url]
有画面则安装成功
性能优化:
修改
/usr/local/termite/apache-tomcat- 6.0.16 /conf/server.xml
#vi /usr/local/termite/apache-tomcat- 6.0.16 /conf/server.xml
找到下面的配置修改:(
94
行左右)
<Connector port="8080" maxHttpHeaderSize="8192"
maxThreads="300" minSpareThreads="150" maxSpareThreads="200"
enableLookups="false" redirectPort="8443" acceptCount="200"
connectionTimeout="20000" disableUploadTimeout="true" debug="0" />
保存后离开
修改
/usr/local/termite/apache-tomcat- 6.0.16 /bin/catalina.sh
#vi /usr/local/termite/apache-tomcat- 6.0.16 /bin/catalina.sh
找到下面:(
25
行左右)
# JRE_HOME Must point at your Java Development Kit installation.
# Defaults to JAVA_HOME if empty.
#
# JAVA_OPTS (Optional) Java runtime options used when the "start",
# "stop", or "run" command is executed.
JAVA_OPTS='-Xms 256m -Xmx 512m ' \\
添加这一行,大小自己定
4
、用jsvc
脚本让Tomcat
自启动。
1
.安装
jsvc
#cd /usr/local/termite/apache-tomcat- 6.0.16 /bin
#tar xvfz jsvc.tar.gz
#cd jsvc-src
#sh support/buildconf.sh
#chmod 755 configure
#./configure --with-java=/usr/local/termite/jdk 1.6.0 _04
#make
2
、添加脚本让
tomcat
自动启动
#useradd tomcat5
添加用户
#groupadd tomcat
添加组
#usermod -G tomcat tomcat5
把
tomcat5
加入
tomcat
组
#chown -R tomcat5 /usr/local/termite/apache-tomcat- 6.0.16 设置用户tomcat5
对
tomcat
的权限
#cp /usr/local/termite/apache-tomcat- 6.0.16 /bin/jsvc-src/native/Tomcat5.sh /etc/init.d/tomcat
移动文件
tomcat5.sh
到
/etc/init.d/
里面并改名为
tomcat
#chmod 755 /etc/init.d/tomcat
#vi /etc/init.d/tomcat
删除原有内容添加如下内容,注意
jdk
路径
#!/bin/sh
#
# Startup Script for Tomcat5
#
# chkconfig: 345 88 14
# description: Tomcat Daemon
# processname: jsvc
# pidfile: /var/run/jsvc.pid
# config:
#
# Source function library.
. /etc/rc.d/init.d/functions
#
prog=tomcat
#
JAVA_HOME=/usr/local/termite/jdk 1.6.0 _04
CATALINA_HOME=/usr/local/termite/apache-tomcat- 6.0.16
DAEMON_HOME=/usr/local/termite/apache-tomcat- 6.0.16 /bin
#TOMCAT_USER=tomcat5
TOMCAT_USER=tomcat5
# for multi instances adapt those lines.
TMP_DIR=/var/tmp
PID_FILE=/var/run/jsvc.pid
CATALINA_BASE=/usr/local/termite/apache-tomcat- 6.0.16
CATALINA_OPTS=
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-src/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/jsvc-src/jsvc \
-stop \
-pidfile $PID_FILE \
org.apache.catalina.startup.Bootstrap
exit $?
;;
*)
echo "Usage tomcat.sh start/stop"
exit 1;;
esac
#service tomcat start
测试
tomcat
能不能启动
#chkconfig tomcat on
#chkconfig --list tomcat
完成自启动脚本