ubuntu8.04中,如何让tomcat随机启动?

重复贴和参考价值不大的帖子,版主维护
回复
nyhj6
帖子: 3
注册时间: 2008-11-23 22:46
送出感谢: 0
接收感谢: 0

ubuntu8.04中,如何让tomcat随机启动?

#1

帖子 nyhj6 » 2008-12-05 22:20

我用的是VMware ,安装了ubuntu8.04,刚安装了tomcat5.5.27,可以启动,并且在windows的IE中可以打开首页,安装成功,我

想设置成随机启动,在网上搜了一下,看到了两三个说法,我按照其中推广最多的那种(网址:http://www.readygo.com.cn/it

-166440.html)
它的内容是建立一个脚本命名为tomcat5.sh,内容为:

2.2.1
#!/bin/sh
#file:tomcat5.sh
#设置环境变量,如果无法启动就将注释去掉
#java_home=/usr/lib/j2sdk1.4-sun
#catalina_home=/usr/share/tomcat5
#classpath=\
#$java_home/lib/tools.jar:\
#$catalina_home/bin/commons-daemon.jar:\
#$catalina_home/bin/bootstrap.jar
case "$1" in
start)
echo "starting tomcat5..."
/usr/tomcat5/bin/startup.sh
;;
stop)
echo "stopping tomcat5..."
/usr/tomcat5/bin/shutdown.sh
;;
*)
echo "usage tomcat.sh start/stop"
exit 1;;
esac
#tomcat5.sh end

将tomcat5.sh 拷贝到/etc/init.d下面。然后运行/usr/bin/ksysv运行图形界面的开机启动设置工具。将available services栏

里的tomcat5.sh拖到runlever 2 start,runlever 3 start,runlever 4 start,runlever 5 start,runlever 6 start,

runlever 0 stop,runlever 1 stop,runlever 6 stop,你可能需要注意图标的位置,我将图标拖到每一栏的启动项目标号是90

的位置。

或者你在终端里运行:

ln -s /etc/init.d/tomcat5.sh /etc/rc0.d/k90tomcat5.sh
ln -s /etc/init.d/tomcat5.sh /etc/rc1.d/k90tomcat5.sh
ln -s /etc/init.d/tomcat5.sh /etc/rc2.d/s90tomcat5.sh
ln -s /etc/init.d/tomcat5.sh /etc/rc3.d/s90tomcat5.sh
ln -s /etc/init.d/tomcat5.sh /etc/rc4.d/s90tomcat5.sh
ln -s /etc/init.d/tomcat5.sh /etc/rc5.d/s90tomcat5.sh
ln -s /etc/init.d/tomcat5.sh /etc/rc6.d/k95tomcat5.sh

重启机器看tomcat是否可以自动启动了。

2.2.2

方法2.2.1有一个严重的问题,那就是tomcat具有root权限。我意味着你的任何一个jsp脚本都具有root权限,所以可以轻易地用

jsp脚本删除你整个硬盘里的东西!所以我们最好不要使用2.2.1方法。

我们下载的jakarta-tomcat-5.0.28.tar.gz带有fsvc工具,在压缩包里的jakarta-tomcat- 5.0.28/bin/fsvc.tar.gz,如果你按

上面的步骤做了,它就在 /usr/share/tomcat5/bin/fsvc.tar.gz,将其解压,得到/usr/share/tomcat5/bin/fsvc- src文件夹。

在终端运行:

/usr/share/tomcat5/bin/fsvc-src/configure --with-java=/usr/lib/j2sdk1.4-sun

make

得到/usr/share/tomcat5/bin/fsvc-src/fsvc文件。将/usr/share/tomcat5/bin/fsvc- src/native/tomcat5.sh脚本文件拷贝

到/etc/init.d下,再使用2.2.1中的的半部分方法将tomcat设置为自启动。

/etc/init.d/tomcat5.sh还需要修改,使其看起来像:

java_home=/usr/lib/j2sdk1.4-sun
catalina_home=/usr/share/tomcat5
daemon_home=/usr/share/tomcat5
tomcat_user=tomcat5 #这里改为一个普通身份的用户名
tmp_dir=/var/tmp
catalina_opts=
classpath=\
$java_home/lib/tools.jar:\
$catalina_home


我按照它说的弄了,而且把这个tomcat5.sh这个文件放在了etc/init.d和链接到etc/rc*.d目录下,重启后没有用,tomcat没有起

来,于是我把rc*.d目录下的这些链接文件删掉了,用命令:
sysv-rc-conf tomcat5 on
查看了一下,在启动级别2-5中都有。重启了一下,还是不行!这么回事呢?

还有一种说法是:(网址:http://lijunjie.javaeye.com/blog/249785)

通过startup.sh来自动启动Tomcat,编辑/etc/rc.d/rc.local 增加内容(假设JDK目录是/usr/local/soft/jdk1.5.0_14,Tomcat

目录是/usr/local/soft/tomcat/tomcat5/bin/)
export JDK_HOME=/usr/local/soft/jdk1.5.0_14
export JAVA_HOME=/usr/local/soft/jdk1.5.0_14
/usr/local/soft/tomcat/tomcat5/bin/startup.sh

我也试过了,也不行,哪位高手教一下我啊,我刚学linux才一个星期,好菜,高手帮我一下吧,万分感谢!!!万分感谢!!!

补充说明:我的jdk安装目录:/usr/java/jdk1.6.0_01
tomcat安装目录:/usr/local/apache-tomcat-5.5.27
回复

回到 “归档贴”