`
hareee
  • 浏览: 26484 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

Linux下Tomcat6使用jsvc自启动

阅读更多

 

Linux Tomcat6使用jsvc 自启动

 

1. 设置软连接

a)  cd /your/tomcat/home,此处换成你的tomcat目录

b)  ln –s apache-tomcat-6.0.16 tomcat

c)  cd /usr/java

d)  ln –s jdk1.6.0_03 jdk ,需要 root

2. 配置环境变量:

a) 编辑 ~/.bashrc ,增加

export JAVA_HOME=/usr/java/jdk

export CATALINA_HOME=/your/tomcat/home

b) source ~/bashrc

 

3. 编译安装 jsvc

cd $CATALINA_HOME/bin

tar zxvf jsvc.tar.gz

cd jsvc-src

chmod +x support/buildconf.sh

chmod +x configure

support/buildconf.sh

./configure && make

 

4. 创建 pidfile ,需要 root

touch /var/run/jsvc.pid

chown user /var/run/jsvc.pid

 

5. 创建 tomcat 启动脚本

vi /etc/init.d/tomcat,需要root,内容如下


#!/bin/sh

# Startup Script for Tomcat6 

# chkconfig: 345 88 14 

# description: Tomcat Daemon 

# processname: jsvc 

# pidfile: /var/run/jsvc.pid

   

#  

# Created by rhao 2008-12-05

# Sun-Ustc Co.,Ltd

#  

   

DAEMON_HOME=$CATALINA_HOME/bin

#此处换成你的tomcat用户

TOMCAT_USER=user

   

# for multi instances adapt those lines.

TMP_DIR=/var/tmp

PID_FILE=/var/run/jsvc.pid

CATALINA_BASE=$CATALINA_HOME

   

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

 

然后, chmod +x tomcat

 

6. 以服务启动,需要 root

/sbin/chkconfig --add tomcat

 

7. 创建 tomcat 后台监控脚本

vi /your/tomcat/home/check_service.sh ,内容如下:

#!/bin/sh

# Check Script for Tomcat6 

 

if test `ps -ef |grep catalina.startup |grep -v grep |wc -l` -eq 0

then

       echo 'Find VoiceFlow Server stop!Now Start Server!' > "/your/tomcat/home/test.txt"

        /etc/init.d/tomcat start &

fi

作用是如果检测到tomcat没有启动,则启动之

 

8. crontab –e ,加入以下内容: */1 * * * * /your/tomcat/home/check_service.sh ,作用是每分钟调用一次/ your/tomcat/home/check_service.sh

 

 

 

 

 

 

 

 

 

 

0
0
分享到:
评论
2 楼 hareee 2009-01-01  
绝对是可行的,我在我们公司电信项目的服务器上部署成功才发上来的,你可以把错误日志贴的详细一些。
1 楼 hubris-sword 2008-12-23  
你试过可行吗?为什么我的都是jsvc.exec error: Service did not exit cleanly
错误,jsvc还没有进到我们的程序就over掉了!

相关推荐

Global site tag (gtag.js) - Google Analytics