`
zhelong111
  • 浏览: 183582 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

CentOS配置Tomcat以服务方式启动

 
阅读更多
在CentOS系统中安装Tomcat7并设置为自启动服务。

1、 软件

a)        下载apache-tomcat-7.0.27 地址: http://apache.etoak.com/tomcat/tomcat-7/v7.0.27/bin/apache-tomcat-7.0.27.tar.gz

b)        如无特殊说明,本文档操作用户为tomcat

2、 安装

a)        解压

1 # tar zxvf apache-tomcat-7.0.27.zip

b)        移动到其他目录

# mv apache-tomcat-7.0.27 /home/tomcat/tomcat

c)        启动Tomcat服务

# cd /home/tomcat/tomcat/bin

# ./startup.sh

d)        检查是否启动成功

在本机浏览器中访问URL: http://localhost:8080/

会出现Tomcat的欢迎页面

注:如果想远程通过浏览器访问,则在远程浏览器中输入http://<ip>:8080/

<ip> 可通过在本地机器上输入命令 ifconfig 查看

如果未能访问到tomcat的欢迎页面,需要查看本机的防火墙设置,是否打开了端口8080

e)        停止服务

# ./shutdown.sh

3、 可能出现的问题

a)        Java未先安装,或未正确配置JAVA_HOME系统环境变量

b)        Linux系统的防火墙8080端口未被设置为远程可访问

4、配置tomcat由tomcat用户自启动(使用jsvc)

a)        编译安装jsvc

# export CATALINA_HOME=/home/tomcat/tomcat

# cd $CATALINA_HOME/bin

# tar xvfz commons-daemon-native.tar.gz

# cd commons-daemon-1.0.8-native-src/unix

# ./configure

# make

# cp jsvc ../..

b)        编写自启动脚本:用root用户登录,创建脚本tomcat7

# vi /etc/init.d/tomcat7

添加如下脚本:

#! /bin/sh

 

# chkconfig: 35 96 04

# description: Apache-Tomcat service script.

 

# Version:

#        2008-01-17-01

# By:

#        Typhoon.Free.Wolf.

 

# Service name.

SVC_NAME="tomcat7"

# Lock file.

LOCK_FILE="/var/lock/subsys/tfw_tomcat"

# Installation prefix.

APP_HOME="/home/tomcat/tomcat"

# The process name to monitor.

APP_PROC="java"

# Authorize user.

APP_USER="tomcat"

 

SLEEP_START=5

SLEEP_STOP=$SLEEP_START

 

# Importing functions.

flg_func=0

if [ -f /etc/init.d/functions ] ; then

        . /etc/init.d/functions

        flg_func=1

elif [ -f /etc/rc.d/init.d/functions ] ; then

        . /etc/rc.d/init.d/functions

        flg_func=1

fi

 

# Templete.

# Return:

#        FLG_PROC_ON means process is there.

#        FLG_PROC_OFF means process not exists.

#        Other means error.

FLG_PROC_ON=1

FLG_PROC_OFF=0

probe() {

        srch_rst=$(ps -A|grep $APP_PROC|awk '{print $4}')

        for rst in $srch_rst ; do

                if [ $APP_PROC = $rst ] ; then

                        return $FLG_PROC_ON

                fi

        done

        return $FLG_PROC_OFF

}

 

# Templete.

#        Shows OK.

# Return:

echo_ok() {

        case $flg_func in

                1)

                        echo_success

                        echo ""

                ;;

                *)

                        echo ""

                        echo "        [  OK  ]"

                ;;

        esac

}

 

# Templete.

#        Shows Passed.

# Return:

echo_pass() {

        case $flg_func in

                1)

                        echo_passed

                        echo ""

                ;;

                *)

                        echo ""

                        echo "        [PASSED]"

                ;;

        esac

}

 

# Templete.

#        Shows Failed.

# Return:

echo_bad() {

        case $flg_func in

                1)

                        echo_failure

                        echo ""

                ;;

                *)

                        echo ""

                        echo "        [FAILED]"

                ;;

        esac

}

 

# Templete.

#        Start section.

# Return:

_start() {

        probe

        proc=$?

        echo ""

        echo "Starting $SVC_NAME..."

 

        if (touch $LOCK_FILE) ; then

                echo_ok

        else

                echo_bad

        fi

}

 

start() {

        probe

        proc=$?

        echo ""

        echo "Starting $SVC_NAME..."

 

        if [ $FLG_PROC_OFF = $proc ] ; then

                if (su - $APP_USER -c "$APP_HOME/bin/startup.sh") ; then

                        sleep $SLEEP_START

                        if (touch $LOCK_FILE) ; then

                                echo_ok

                        else

                                echo_pass

                                echo ""

                        fi

                else

                        echo_bad

                fi

        elif [ $FLG_PROC_ON = $proc ] ; then

                if (touch $LOCK_FILE) ; then

                        echo_passed

                        echo ""

                else

                        echo_bad

                fi

        fi

}

 

# Templete.

#        Stop section.

# Return:

_stop() {

        probe

        proc=$?

        echo ""

        echo "Stopping $SVC_NAME..."

 

        if (rm -Rf $LOCK_FILE) ; then

                echo_ok

        else

                echo_bad

        fi

}

 

stop() {

        probe

        proc=$?

        echo ""

        echo "Stopping $SVC_NAME..."

 

        if [ $FLG_PROC_OFF = $proc ] ; then

                if (rm -Rf $LOCK_FILE) ; then

                        echo_passed

                        echo ""

                else

                        echo_bad

                fi

        elif [ $FLG_PROC_ON = $proc ] ; then

                if (su - $APP_USER -c "$APP_HOME/bin/shutdown.sh") ; then

                        sleep $SLEEP_STOP

                        if (rm -Rf $LOCK_FILE) ; then

                                echo_ok

                        else

                                echo_pass

                                echo ""

                        fi

                else

                        echo_bad

                fi

        fi

}

 

# Parse command line parameters.

case $1 in

        start)

                start

        ;;

        stop)

                stop

        ;;

        restart)

                stop

                start

        ;;

        *)

                # Print help

                echo "Usage: $0 {start|stop|restart}"

                exit 1

        ;;

esac

exit 0

注意修改APP_HOME为tomcat实际安装路径,APP_USER为启动tomcat的用户。

c)        设置tomcat自启动服务

使用如下命令给tomcat7增加执行权限

# chmod +x tomcat7

将tomcat添加到启动服务中

# chkconfig --add tomcat7

# chkconfig --level 234 tomcat7 on

可以用如下命令确认是否配置成功

# chkconfig --list tomcat7

之后就可以用service来控制tomcat的启动和停止了。

# service tomcat7 start

# service tomcat7 stop

查看/home/tomcat/tomcat/logs/catalina-daemon.out,确认没有error
分享到:
评论

相关推荐

    centos6配置tomcat8开机自启动脚本

    主要介绍了centos6配置tomcat8开机自启动脚本的相关资料,需要的朋友可以参考下

    Centos7安装配置tomcat 9并设置自动启动

    Centos7安装配置tomcat 9并设置自动启动, 具体参考链接地址, https://blog.csdn.net/stinkstone/article/details/78082725 ,这里是连接的配置文件。

    CentOS7 环境下Tomcat和Nginx 安全配置操作手册

    本文档用来指导在CentOS 7 环境下,如何一步一步安装和配置JDK ...2.2.1 配置Tomcat 服务自启动 2.3 Tomcat 性能优化 2.3.1 更改server.xml 2.3.2 配置默认应用 2.3.3 更改JVM 2.4 应用服务器安装和配置确认

    CentOS8服务器配置(JDK1.8+Tomcat9+MySQL8.0+nginx)

    我安装的ContOS8(版本:CentOS-Stream-8-x86_64-20191219-dvd1)没有默认安装 检查是否预装jdk,如果有请先卸载: yum -y remove java 确认安装版本: 注意jdk版本,不要安装错了,同理你可以选择其他对应版本的...

    Centos7安装配置tomcat9并设置自动启动的方法

    Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer Page(JSP)的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和...

    Centos7.4下安装mongo+tomcat+redis

    Centos7.4下安装mongo+tomcat+redis、开机自启动,tomcat+redis配置文件详解

    tomcat+solr服务配置

    利用tomcat进行solr服务配置,并且这个文档同时使用在Windows环境和linux环境。本文是以centos7为例进行整理。

    云服务器配置tomcat

    二、配置并开启Tomcat 1.将Tomcat压缩包复制到到服务器中并解压(位置自行选择) tar -zxvf apache-tomcat-9.0.27.tar.gz#解压apache-tomcat-9.0.27.tar.gz到当前目录 2.进入解压出来的文件夹的bin目录下启动tomcat ...

    Tomcat 在Centos Linux 上如何实现自启

    Tomcat 在Centos Linux 上配置,如何修改配置文件,加载成系统服务 带启动SHELL

    linux设置tomcat自启动的方法

    linux设置tomcat自动启动在centos下,开机后会自动执行/etc/rc.local中的命令,平时启动tomcat的命令为tomcat_home/bin/startup.sh或tomcat_home/bin/catalina.sh start,当直接把他们任何一个加入到/etc/rc.local中...

    tomcat自动启动脚本配置

    tomcat,jms,presto自启动脚本配置和执行方法,给予linux环境centos6

    CentOS系统下安装Tomcat7的过程详解

    1.检查java版本信息 #java -version ...1.1、(以下方式强烈不建议,因为有时候会缺少jar包,导致tomcat启动不成功): yum -y install java-1.7.0-openjdk 1.2、强烈建议安装oracle的jdk包,此处安装jdk7,到如下

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

    Tomcat有Tomcat7,Tomcat8和Tomcat9等版本,目前企业使用较多的是Tomcat8,所以这里以Tomcat8为列 进入Tomcat8下载网址:Tomcat8下载网址https://tomcat.apache.org/download-80.cgi 点击左侧Download下的对应版本,...

    基于CentOS6.8镜像+OpenSSL1.1.1g通过Nginx1.14离线创建HTTPS服务

    在DockerOS6.8的镜像里,离线安装Nginx及配置HTTPS服务。步骤: 1、启动容器; 2、安装gcc编译环境; 3、安装其他工具,如OpenSSL等; 4、安装Nginx; 5、启动及验证Nginx; 6、安装JDK和Tomcat; 7、创建证书并修改...

    Centos6 Mysql,REDIS,JDK,TOMCAT ARP,NGINX,JYTHON安装

    Linux Centos 6 JAVA环境安装 1.MySql 5.7.20 安装步骤 ...4.TOMCAT 多版本安装 与 多版本不同的JDK 环境设置,TOMCAT 配置说明 5.Tomcat APR 模块安装 6.Nginx 1.14 安装 附带 nginx 启动脚本 7.jython 安装

    Tomcat CentOS安装实现过程图解

    tomcat的服务器开机启动(脚本貌似有问题,这里直接引用的别人的博客) 给 tomcat配置用户名和密码 步骤: 1. 下载 Tomcat 或者 然后呢 然后右键复制链接地址 用wget wget + 链接地址 下载下来。(这样直接...

    阿里云Centos7下安装Redis及tomcat设置自启动的方法

    Redis安装配置 ... ...$ tar xzf redis-4.0.2.tar.gz $ cd redis-4.0.2 $ make $ make install //将可执行程序复制到/usr/local/bin中 ...2.加载配置启动 ./redis-server ./redis.conf 3.通过初始化脚本启动Redis (1)配置初

    systemctl 管理tomcat.txt

    CentOS7 增加tomcat 启动,停止,使用systemctl进行配置详解!centos7 使用 systemctl 替换了 service命令

Global site tag (gtag.js) - Google Analytics