`
zengsun
  • 浏览: 39289 次
  • 性别: Icon_minigender_1
  • 来自: 江西
社区版块
存档分类
最新评论

如何使Tomcat在Linux下自动启动

阅读更多
由于想部署一个Grails应用在Tomcat上,所以希望Tomcat可以自动启动。

首先参考官方文档:Apache Tomcat 6.0 Tomcat Setup的“Unix daemon”部分。
Apache Tomcat 6.0 Tomcat Setup 写道
Tomcat can be run as a daemon using the jsvc tool from the commons-daemon project. Source tarballs for jsvc are included with the Tomcat binaries, and need to be compiled. Building jsvc requires a C ANSI compiler (such as GCC), GNU Autoconf, and a JDK.

Tomcat可以使用来自commons-daemon项目的jsvc工具作为一个Linux/Unix守护进程运行起来。jsvc的源码包已经包含在Tomcat的bin目录下,并且需要自己编译。编译需要标准C(ANSI C)的编译器(例如GCC)、GUN Autoconf 和JDK。

自己准备编译环境,然后按照下面步骤编译项目。
    cd $CATALINA_HOME/bin
    tar xvfz jsvc.tar.gz
    cd jsvc-src
    autoconf
    ./configure --with-java=/usr/local/jdk1.5.0 (自己的JDK路径)
    make
    cp jsvc ..
    cd ..

好了,现在你可以通过jsvc将Tomcat作为守护进程运行起来。
命令可以参考官方文档:
Apache Tomcat 6.0 Tomcat Setup 写道

Tomcat can then be run as a daemon using the following commands.

    cd $CATALINA_HOME
    ./bin/jsvc -cp ./bin/bootstrap.jar \
        -outfile ./logs/catalina.out -errfile ./logs/catalina.err \
        org.apache.catalina.startup.Bootstrap


jsvc has other useful parameters, such as -user which causes it to switch to another user after the daemon initialization is complete. This allows, for example, running Tomcat as a non privileged user while still being able to use privileged ports. jsvc --help will return the full jsvc usage information. In particular, the -debug option is useful to debug issues running jsvc.

The file $CATALINA_HOME/bin/jsvc/native/tomcat.sh can be used as a template for starting Tomcat automatically at boot time from /etc/init.d. The file is currently setup for running Tomcat 4.1.x, so it is necessary to edit it and change the classname from BootstrapService to Bootstrap.

上面的英文比较容易懂了,就不翻译了。

我们可以看一下$CATALINA_HOME/bin/jsvc/native/tomcat.sh 这个文件(因为我们需要根据自己的环境修改这个文件)。
但是实际的启动文件和它有些不同,主要是需要支持chkconfig。
tomcat 写道

#!/bin/sh
#
# Startup Script for Tomcat6
#
# 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= 你的JDK目录(例如:/usr/local/jdk-1.5.0)
CATALINA_HOME= 你的tomcat目录
DAEMON_HOME= 你的jsvc目录(本例中其实就是Tomcat的bin目录)
TOMCAT_USER=tomcat6 启动Tomcat的用户名!

# for multi instances adapt those lines.
TMP_DIR=/var/tmp
PID_FILE=/var/run/jsvc.pid
CATALINA_BASE= 你的tomcat目录

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


将上面的这个文件复制到/etc/init.d且文件名为tomcat。
按照下面步骤在系统中添加启动脚本:
#useradd tomcat6     //添加用户
#groupadd tomcat  //添加组
#usermod -G tomcat tomcat6  //把tomcat5加入tomcat组
#chown -R tomcat6 [color=red]你的tomcat目录[/color]   //设置用户tomcat6对目录的权限
#chkconfig --add tomcat  //把这个脚本设置成系统启动时自动执行,系统关闭时自动停止


如果这些步骤完成了,那我们的Tomcat服务就可以在Linux中自动启动了。
分享到:
评论

相关推荐

    tomcat在linux上自动启动

    linux下自动启动tomcat的shell脚本

    linux下tomcat自动启动脚本

    教你如何在linux下配置tomcat自动启动的脚本

    Linux自动启动tomcat服务shell脚本

    Linux自动启动tomcat服务shell脚本

    Linux(CentOS7)安装Tomcat与设置Tomcat为开机启动项(tomcat8为例)

    为了使Tomcat在每次系统启动时自动运行,我们需要将其设置为系统服务。在CentOS7中,我们可以使用Systemd来实现这个功能。 1. **创建启动脚本**:在`/etc/systemd/system`目录下创建一个新的systemd服务文件,例如`...

    tomcat之Linux版

    为了使Tomcat在系统启动时自动启动,我们可以将其添加到系统的启动脚本中。在大多数Linux发行版中,可以将Tomcat的启动脚本`/apache-tomcat-7.0.57/bin/startup.sh`链接到`/etc/init.d`目录下,并设置相应的启动级别...

    虚拟机linux下配置Tomcat并设置开机自启动

    要使 Tomcat 在 Linux 启动时自动启动,需要创建一个启动脚本文件。在/etc/init.d/目录下创建一个名为 tomcat 的文件,内容如下: ```bash #!/bin/bash # /etc/rc.d/init.d/tomcat # init script for tomcat ...

    tomcat_linux

    【标题】"Tomcat在Linux环境下的部署与运行" 【正文】 Tomcat是一款广泛应用的开源Java Servlet容器,它实现了Java EE中的Web应用服务规范。在Linux环境下部署Tomcat,可以充分利用Linux系统的稳定性和安全性,为...

    linux环境下配置Tomcat自启动

    下面我们将详细探讨如何在Linux系统中设置Apache Tomcat自动启动,并了解与这个过程相关的概念和技术。 首先,Apache Tomcat是一款开源的Java Servlet容器,主要用于运行Java Web应用程序。它是一个轻量级的应用...

    apache-tomcat7 linux

    要使Tomcat在系统启动时自动运行,可以创建一个systemd服务单元文件。创建一个名为 `tomcat7.service` 的文件到 `/etc/systemd/system/` 目录下,并添加以下内容: ``` [Unit] Description=Apache Tomcat Web ...

    linux版的tomcat

    为了更好地管理和监控Tomcat,可以配置系统服务,使Tomcat随系统启动而自动启动。可以创建一个系统启动脚本,然后通过`systemctl`或`update-rc.d`命令将其添加为服务。 Tomcat的配置文件主要位于`conf`目录下,包括...

    Tomcat linux服务和自启动

    通过`chkconfig`工具将Tomcat服务添加到系统启动级别,以便在开机时自动启动: ```bash chkconfig --add tomcat chkconfig tomcat on ``` 这使得Tomcat在系统启动时自动执行`/etc/init.d/tomcat start`。 **5. 测试...

    tomcat7linux版(免费!!!)

    6. **启动和管理Tomcat**:在Linux中,可以使用`bin/startup.sh`和`bin/shutdown.sh`脚本来启动和停止Tomcat。为了方便,可以创建systemd服务单元文件,实现开机启动和系统服务管理。 7. **验证安装**:启动Tomcat...

    tomcat在linux下的详细配置

    【正文】 ...以上就是Tomcat在Linux环境下的详细配置,包括优化设置、开机自动启动以及数据连接池的配置。在实际部署时,需结合具体的应用负载和服务器资源进行适当的调整,以达到最佳的运行效率和稳定性。

    Linux 部署jenkins war包直接tomcat启动

    5. **启动Tomcat**:启动Tomcat服务,使Jenkins WAR包能够自动展开并运行。在Ubuntu/Debian系统中,命令为`sudo systemctl start tomcat9`;在CentOS/RHEL系统中,命令为`sudo systemctl start tomcat`。 6. **等待...

    linux系统下tomcat配置安装以及设置开机自动启动

    tomcat的安装,并将将tomcat设置成服务

    tomcat10.1.9Linux版本

    以上是Tomcat10.1.9在Linux环境下安装和管理的基础知识,实际操作中可能还需要根据具体的Linux发行版和服务器需求进行适当的调整。对于开发者和系统管理员来说,理解这些步骤和配置是管理和维护Java Web应用的基础。

    tomcat5 linux 版

    【描述】中提到的"已经在Redhat AS4上安装测试"意味着这个版本的Tomcat在Red Hat Enterprise Linux 4 Advanced Server(简称Red Hat AS4)上经过了实际的安装和功能验证,确保了在该操作系统环境下的兼容性和稳定性...

    tomcat 8.0 linux

    【标题】:“Tomcat 8.0在Linux环境下的配置与管理” 【描述】:Tomcat 8.0是Apache软件基金会的Java Servlet容器,它实现了Java EE Web应用程序的规范,如Servlet和JSP。在Linux操作系统上部署和运行Tomcat 8.0,...

    tomcat9 Linux版

    【描述】"tomcat9 Linux版"暗示了在Linux环境下安装、配置和管理Tomcat 9的过程。这包括了下载Tomcat 9的Linux兼容版本,理解Linux的目录结构,以及如何在Linux命令行下进行操作。 以下是一些关键的知识点: 1. **...

    centos设置tomcat开机自启动

    完成上述配置后,可以通过以下步骤验证Tomcat是否能够成功在系统启动时自动启动: 1. **重启系统**: ```bash sudo reboot ``` 2. **检查Tomcat状态**: - 如果使用的是`rc.local`方法,则可以直接检查Tomcat...

Global site tag (gtag.js) - Google Analytics