阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS系统中安装Tomcat7并设置为自启动服务

433次阅读
没有评论

共计 4935 个字符,预计需要花费 13 分钟才能阅读完成。

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)  解压

# 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。

更多 Tomcat 相关教程见以下内容

CentOS 6.6 下安装配置 Tomcat 环境  http://www.linuxidc.com/Linux/2015-08/122234.htm

RedHat Linux 5.5 安装 JDK+Tomcat 并部署 Java 项目  http://www.linuxidc.com/Linux/2015-02/113528.htm 

Tomcat 权威指南(第二版)(中英高清 PDF 版 + 带书签)  http://www.linuxidc.com/Linux/2015-02/113062.htm 

Tomcat 安全配置与性能优化 http://www.linuxidc.com/Linux/2015-02/113060.htm 

Linux 下使用 Xshell 查看 Tomcat 实时日志中文乱码解决方案 http://www.linuxidc.com/Linux/2015-01/112395.htm 

CentOS 64-bit 下安装 JDK 和 Tomcat 并设置 Tomcat 开机启动操作步骤 http://www.linuxidc.com/Linux/2015-01/111485.htm 

CentOS 6.5 下安装 Tomcat  http://www.linuxidc.com/Linux/2015-01/111415.htm 

Tomcat 的详细介绍:请点这里
Tomcat 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-08/133875.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计4935字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19356
评论数
4
阅读量
8320186
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

星哥带你玩飞牛 NAS-7:手把手教你免费内网穿透 -Cloudflare tunnel 前言 大家好,我是星...
星哥带你玩飞牛NAS-2:飞牛配置RAID磁盘阵列

星哥带你玩飞牛NAS-2:飞牛配置RAID磁盘阵列

星哥带你玩飞牛 NAS-2:飞牛配置 RAID 磁盘阵列 前言 大家好,我是星哥之前星哥写了《星哥带你玩飞牛 ...
星哥带你玩飞牛NAS-1:安装飞牛NAS

星哥带你玩飞牛NAS-1:安装飞牛NAS

星哥带你玩飞牛 NAS-1:安装飞牛 NAS 前言 在家庭和小型工作室场景中,NAS(Network Atta...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
欧洲无限速云盘免费10GB永久存储 + WebDAV部署+图床搭建,多平台联动一步到位!

欧洲无限速云盘免费10GB永久存储 + WebDAV部署+图床搭建,多平台联动一步到位!

欧洲无限速云盘免费 10GB 永久存储 + WebDAV 部署 + 图床搭建,多平台联动一步到位! 大家好,我...
多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞...
云服务器部署OpenClaw:轻量应用服务器+钉钉和QQ机器人

云服务器部署OpenClaw:轻量应用服务器+钉钉和QQ机器人

  云服务器部署 OpenClaw:轻量应用服务器 + 钉钉和 QQ 机器人 一、前言 最近开源圈爆...
三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

  三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Andr...
150元打造低成本NAS小钢炮,捡一块3865U工控板

150元打造低成本NAS小钢炮,捡一块3865U工控板

150 元打造低成本 NAS 小钢炮,捡一块 3865U 工控板 一块二手的熊猫 B3 工控板 3865U,搭...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

还在忍受动辄数百兆的“全家桶”监控软件?后台偷占资源、界面杂乱冗余,想查个 CPU 温度都要层层点选? 今天给...
免费获得大模型的Api-Key的方法:英伟达提供GLM-4.7、Minimax M2.1模型和GitHub的AI大模型API申请

免费获得大模型的Api-Key的方法:英伟达提供GLM-4.7、Minimax M2.1模型和GitHub的AI大模型API申请

  免费获得大模型的 Api-Key 的方法:英伟达提供 GLM-4.7、Minimax M2.1 ...
飞牛NAS升级到最新版,有线无法获取IP、无线网络莫名打开的BUG问题

飞牛NAS升级到最新版,有线无法获取IP、无线网络莫名打开的BUG问题

  飞牛 NAS 升级到最新版,有线无法获取 IP、无线网络莫名打开的 BUG 问题 星哥的飞牛 N...
零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face 免费服务器 +Docker 快速部署 HertzBeat 监控平台 ...
每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站 - 手机博物馆 -CHAZ 3D Experience 一句话介绍:一个用 3D 方式重温...