Solaris9(intelx86)下从源代码安装Tomcat5实战记录
I.从源码安装Tomcat 51.JDK安装及设定
(1)使用Solaris 9自带的JDK
代码:
# java -version
java version "1.4.1_02a"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1_02a-b01)
Java HotSpot(TM) Client VM (build 1.4.1_02a-b01, mixed mode)
(2)修改/etc/profile,加入JAVA_HOME环境变量
代码:
JAVA_HOME=/usr/java
export JAVA_HOME
2.安装Apache Ant
(1)从[ur]http://ant.apache.org/bindownload.cgi[/url]下载ant的二进制包 apache-ant-1.6.1-bin.tar.gz
代码:
# gunzip < apache-ant-1.6.1-bin.tar.gz | tar xvf -
# mv apache-ant-1.6.1 /usr
# cd /usr
# ln -s apache-ant-1.6.1 ant
(2)修改环境变量
代码:
ANT_HOME=/usr/ant
export ANT_HOME
PATH=$PATH:$ANT_HOME/bin
export PATH
3.编译Tomcat
(1)从http://jakarta.apache.org/tomcat/tomcat-5.0-doc/build.xml下载编译所需的build.xml
建一个目录用来放下载的Tomcat源代码,把那个build.xml也放在这,为了方便,称这个目录为${tomcat.source}.
运行ant之前,需要知道ant先从Apache的CVS服务器中把Tomcat 5的源码checkout出来(需要先安装cvs),并且要下载一些编译时需要的lib文件,
这些lib文件默认是放在/usr/share/java下。如果/usr/share/java这个目录不存在,可以先创建,也可以在build.properties
文件中指定(如果需要网络代理的话,也需要在${tomcat.source}下建一个build.properties文件)。
build.properties的内容如下
代码:
# ----- Proxy setup -----
# Uncomment if using a proxy server
#proxy.host=proxy.domain
#proxy.port=8080
#proxy.use=on
# ----- Default Base Path for Dependent Packages -----
# Replace this path with the directory path where dependencies binaries
# should be downloaded
base.path=/usr/share/java
(2)运行ant,编译
代码:
# cd ${tomcat.source}
# ant
等ant成功运行后,在${tomcat.source}/jakarta-tomcat-5/build目录下可以找到编译好的Tomcat
4.启动Tomcat
(1)添加环境变量
代码:
CATALINA_HOME=${tomcat.source}/jakarta-tomcat-5/build
export CATALINA_HOME
(2)修改$CATALINA_HOME/conf/tomcat-users.xml,添加一管理用户
代码:
<role rolename="admin"/>
<role rolename="manager"/>
<user username="admin" password="password" roles="admin,manager"/>
(3)运行$CATALINA_HOME/bin/startup.sh启动Tomcat
访问http://server-ip:8080/manager/status
5.Run Tomcat as a daemon
(1)首先编译jsvc,需要先安装gcc、autoconf、automake和m4
代码:
# cd ${tomcat.source}/jakarta-commons/daemon/src/native/unix
# chmod 744 support/buildconf.sh
# support/buildconf.sh
# ./configure
# make
执行buildconf.sh可能会出现这样的错误
代码:
autoconf: /usr/local/bi/autom4te: not found
这是因为autom4te脚本找不到perl解释器。解决办法是
代码:
# ln -s /usr/bin/perl /usr/local/bin/perl
make时可能会报
代码:
make[1]:ar:Command not found
这个需要把/usr/ccs/bin加到PATH环境变量中
编译成功后,就会在${tomcat.source}/jakarta-commons/daemon/src/native/unix目录下生成jsvc
(2)在${tomcat.source}/jakarta-commons/daemon/src/native/unix/native下有一个Tomcat5.sh可以用作启动脚本
代码:
# cp ${tomcat.source}/jakarta-commons/daemon/src/native/unix/native/Tomcat5.sh /etc/init.d/tomcat
# cd /etc/rc2.d
# ln ../init.d/tomcat S99tomcat
# cd ../rc0.d
# ln ../init.d/tomcat K03tomcat
(3)添加运行tomcat的用户
代码:
# groupadd tomcat
# useradd -g tomcat -d ${tomcat.source} tomcat
# chown -R tomcat:tomcat ${tomcat.source}
修改/etc/init.d/tomcat,主要是这几个变量
代码:
JAVA_HOME=/usr/java
CATALINA_HOME=${tomcat.source}/jakarta-tomcat-5/build
DAEMON_HOME=${tomcat.source}/jakarta-commons/daemon
TOMCAT_USER=tomcat
用这个脚本启动和关闭tomcat
代码:
# /etc/init.d/tomcat start
# /etc/init.d/tomcat stop
(4)重新启动机器,一切正常的话,tomcat就运行在后台了
代码:
# ps -ef|grep tomcat |grep -v grep
tomcat 337 331 0 13:11:55 ? 0:29 /export/home/tomcat5/jakarta-commons/daemon/src/native/unix/jsvc -user tomcat -
root 331 1 0 13:11:55 ? 0:00 /export/home/tomcat5/jakarta-commons/daemon/src/native/unix/jsvc -user tomcat -本文来自:http://www.xiaoyaxiao.com/1316.html
发表您的高见!