当前位置:  首页  >  服务器技术  >  Linux/unix  >  Linux系统

关于在Debian下自动运行Tomcat的问题

关于在Debian下自动运行Tomcat的问题--Linux发行版技术-Debian信息,下面是详情阅读。
一、问题:
情况是这样的:Debian Etch,可以在shell下正常启动的Tomcat(安装到/usr/share/tocmat5.5),已经正确安装的JDK,已经配置的环境变量(JAVA_HOME,CATALINA_HOME,PATH,CLASSPATH)。

要求是:在开机以后Tomcat自动运行。

二、尝试:
1 编写脚本/etc/init.d/tomcat5.5。内容如下:
#!/bin/sh
/usr/share/tomcat5.5/bin/catalina.sh start

在shell提示符下执行命令:
update-rc.d tomcat5.5 start 99 1 2 3 4 5 .
重新启动系统。Tomcat并没有运行。

2 在shell提示符下执行命令:
update-rc.d -f tomcat5.5 remove
rm /etc/init.d/tomcat5.5
ln -s /usr/share/tomcat5.5/bin/start.sh tomcat5.5
update-rc.d tomcat5.5 start 99 1 2 3 4 5 .
重新启动系统。Tomcat没有运行。

三、思考
问题出在哪?既然可以在shell下可以正确启动Tomcat,为什么不能在开机时候自动运行?环境变量设置在文件/etc/profile里。难道是在开机,执行文件/etc/init.d/tomcat5.5时环境变量还没有设置?很有可能。

通过对比文件:/usr/share/tomcat5.5/bin/catalina.sh和文件/usr/share/tomcat5.5/bin/start.sh我发现start.sh也是通过调用文件/usr/share/tocmat5.5/bin/catalina.sh来启动Tomcat服务的。如果我把环境变量添加到文件catalina.sh的最前面。这样在执行这个文件时,环境变量不就存在了吗?

四、结果
按照上面的思路,我修改了文件/usr/share/tomcat5.5/bin/catalina.sh,在文件中添加了如下内容:

export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
export JRE_HOME=/usr/lib/jvm/java-1.5.0-sun
export CATALINA_HOME=/usr/share/tomcat5.5
export CATALINA_BASE=/usr/share/tomcat5.5
export CATALINA_TMPDIR=/usr/share/tomcat5.5/temp

现在重新启动系统,Tomcat正常运行。
吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | 凯发国际娱乐 | 凯发国际娱乐下载 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | PHP问答
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有