由于想部署一个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中自动启动了。
分享到:
相关推荐
linux下自动启动tomcat的shell脚本
教你如何在linux下配置tomcat自动启动的脚本
Linux自动启动tomcat服务shell脚本
为了使Tomcat在每次系统启动时自动运行,我们需要将其设置为系统服务。在CentOS7中,我们可以使用Systemd来实现这个功能。 1. **创建启动脚本**:在`/etc/systemd/system`目录下创建一个新的systemd服务文件,例如`...
为了使Tomcat在系统启动时自动启动,我们可以将其添加到系统的启动脚本中。在大多数Linux发行版中,可以将Tomcat的启动脚本`/apache-tomcat-7.0.57/bin/startup.sh`链接到`/etc/init.d`目录下,并设置相应的启动级别...
要使 Tomcat 在 Linux 启动时自动启动,需要创建一个启动脚本文件。在/etc/init.d/目录下创建一个名为 tomcat 的文件,内容如下: ```bash #!/bin/bash # /etc/rc.d/init.d/tomcat # init script for tomcat ...
【标题】"Tomcat在Linux环境下的部署与运行" 【正文】 Tomcat是一款广泛应用的开源Java Servlet容器,它实现了Java EE中的Web应用服务规范。在Linux环境下部署Tomcat,可以充分利用Linux系统的稳定性和安全性,为...
下面我们将详细探讨如何在Linux系统中设置Apache Tomcat自动启动,并了解与这个过程相关的概念和技术。 首先,Apache Tomcat是一款开源的Java Servlet容器,主要用于运行Java Web应用程序。它是一个轻量级的应用...
要使Tomcat在系统启动时自动运行,可以创建一个systemd服务单元文件。创建一个名为 `tomcat7.service` 的文件到 `/etc/systemd/system/` 目录下,并添加以下内容: ``` [Unit] Description=Apache Tomcat Web ...
为了更好地管理和监控Tomcat,可以配置系统服务,使Tomcat随系统启动而自动启动。可以创建一个系统启动脚本,然后通过`systemctl`或`update-rc.d`命令将其添加为服务。 Tomcat的配置文件主要位于`conf`目录下,包括...
通过`chkconfig`工具将Tomcat服务添加到系统启动级别,以便在开机时自动启动: ```bash chkconfig --add tomcat chkconfig tomcat on ``` 这使得Tomcat在系统启动时自动执行`/etc/init.d/tomcat start`。 **5. 测试...
6. **启动和管理Tomcat**:在Linux中,可以使用`bin/startup.sh`和`bin/shutdown.sh`脚本来启动和停止Tomcat。为了方便,可以创建systemd服务单元文件,实现开机启动和系统服务管理。 7. **验证安装**:启动Tomcat...
【正文】 ...以上就是Tomcat在Linux环境下的详细配置,包括优化设置、开机自动启动以及数据连接池的配置。在实际部署时,需结合具体的应用负载和服务器资源进行适当的调整,以达到最佳的运行效率和稳定性。
5. **启动Tomcat**:启动Tomcat服务,使Jenkins WAR包能够自动展开并运行。在Ubuntu/Debian系统中,命令为`sudo systemctl start tomcat9`;在CentOS/RHEL系统中,命令为`sudo systemctl start tomcat`。 6. **等待...
tomcat的安装,并将将tomcat设置成服务
以上是Tomcat10.1.9在Linux环境下安装和管理的基础知识,实际操作中可能还需要根据具体的Linux发行版和服务器需求进行适当的调整。对于开发者和系统管理员来说,理解这些步骤和配置是管理和维护Java Web应用的基础。
【描述】中提到的"已经在Redhat AS4上安装测试"意味着这个版本的Tomcat在Red Hat Enterprise Linux 4 Advanced Server(简称Red Hat AS4)上经过了实际的安装和功能验证,确保了在该操作系统环境下的兼容性和稳定性...
【标题】:“Tomcat 8.0在Linux环境下的配置与管理” 【描述】:Tomcat 8.0是Apache软件基金会的Java Servlet容器,它实现了Java EE Web应用程序的规范,如Servlet和JSP。在Linux操作系统上部署和运行Tomcat 8.0,...
【描述】"tomcat9 Linux版"暗示了在Linux环境下安装、配置和管理Tomcat 9的过程。这包括了下载Tomcat 9的Linux兼容版本,理解Linux的目录结构,以及如何在Linux命令行下进行操作。 以下是一些关键的知识点: 1. **...
完成上述配置后,可以通过以下步骤验证Tomcat是否能够成功在系统启动时自动启动: 1. **重启系统**: ```bash sudo reboot ``` 2. **检查Tomcat状态**: - 如果使用的是`rc.local`方法,则可以直接检查Tomcat...