在之前的博文中已经对CentOS7下通过tomcat进行WEB系统的发布进行了介绍,今天将利用init.d启动脚本,将服务脚本加入到开机启动服务队列,实现tomcat服务的开机启动。

1. 环境准备

1.1 系统

操作系统:CentOS 7(64位)

1.2 工具/软件

已安装JDK,并配置好环境变量 
已安装tamcat,可手动启动

2. 方法/步骤

2.1 JDK环境配置

CentOS7默认安装了OpenJDK,用于支持Tomcat启动是没有问题的。如果项目需要使用Sun的JDK特性的话,就需要重新配置Sun的JDK环境。这里可以参照本人之前的博文:《17101501_CentOS7下卸载openJDK安装Sun公司的JDK》。

2.2编写tomcat服务脚本文件

在/etc/init.d/目录下创建tomcat8服务脚本文件。 
执行脚本:

[root@localhost /]# vim /etc/init.d/tomcat8
[root@localhost /]# cat /etc/init.d/tomcat8

将下面内容进行粘贴:

#!/bin/bash
#
# tomcat startup script for the Tomcat server
#
#
# chkconfig:
# description: start the tomcat deamon
#
# Source function library
. /etc/rc.d/init.d/functions prog=tomcat8
JAVA_HOME=/usr/java/jdk1..0_151/ # 根据自己的路径改写JAVA_HOME
export JAVA_HOME
CATALANA_HOME=/usr/local/tomcat/ # 根据自己的路径改写CATALANA_HOME
export CATALINA_HOME case "$1" in
start)
echo "Starting Tomcat..."
$CATALANA_HOME/bin/startup.sh
;; stop)
echo "Stopping Tomcat..."
$CATALANA_HOME/bin/shutdown.sh
;; restart)
echo "Stopping Tomcat..."
$CATALANA_HOME/bin/shutdown.sh
sleep
echo
echo "Starting Tomcat..."
$CATALANA_HOME/bin/startup.sh
;; *)
echo "Usage: $prog {start|stop|restart}"
;;
esac
exit

保存退出

2.3 赋权限,测试启动脚本

执行脚本:

[root@localhost /]# cd /etc/init.d/
[root@localhost init.d]# chmod tomcat8 #赋予权限
[root@localhost init.d]# service tomcat8 start #启动服务
Starting tomcat8 (via systemctl): [ 确定 ]
[root@localhost init.d]# service tomcat8 stop #停止服务
Stopping tomcat8 (via systemctl): [ 确定 ]
[root@localhost init.d]# service tomcat8 restart #重启服务
Restarting tomcat8 (via systemctl): [ 确定 ]

2.4 将服务脚本加入到系统启动队列

执行脚本:

[root@localhost zm]# chkconfig tomcat8 on  #服务脚本加入到系统启动队列
[root@localhost zm]# chkconfig --list tomcat8 #检查 oracle服务是否已经生效


注意:该输出结果只显示 SysV 服务,并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖。
如果您想列出 systemd 服务,请执行 'systemctl list-unit-files'。
欲查看对特定 target 启用的服务请执行
'systemctl list-dependencies [target]'。
tomcat8         :关    :关    :开    :开    :开    :开    :关

2.5 重启系统,测试配置结果

一般情况下,启动是没有问题的。

这里多说点儿,因为CentOS7的自启动服务开始由systemctl逐渐替代了早期版本中的chkconfig和service形式。 
这里我尝试了一下用指令:systemctl start tomcat8启动服务,系统提示systemctl daemon-reload命令加载服务,执行后,发现可以通过systemctl命令进行简单的控制,如查询状态,启动服务,终止服务,重启服务等操作。但是关于开机启动的设置是不可以的,还需要通过老命令chkconfig实现。

转:http://blog.csdn.net/oaim_zh/article/details/78316254

CentOS7下利用init.d启动脚本实现tomcat开机自启动的更多相关文章

  1. centos7下安装、配置Nginx、设置Nginx开机自启动

    测试环境: [root@centos-linux ~]# cat /etc/redhat-releaseCentOS Linux release 7.6.1810 (Core) [root@cento ...

  2. linux下配置tomcat开机自启动

    Linux下配置tomcat开机自启动   1.写一个tomcat脚本,内容如下,设置其权限为755,放在/etc/init.d/目录下 #!/bin/bash## /etc/init.d/tomca ...

  3. Linux下利用Ant调用Jmeter脚本生成HTML测试报告

    今天我们学习如何利用Ant调用Jmeter脚本,并将生成的 jtl 文件转换为 HTML 格式的测试报告. 准备工作 需要在Linux上提前安装好 JDK. Jmeter 和 Ant. 1,JDK(可 ...

  4. Centos7系统下编写systemd脚本设置redis开机自启动

    今天想设置redis开机自启动,我觉得这样子比较好,但是在网上找了很长时间发现大家都是基于chkconfig的写法来设置的,并不能由systemd进程来统一管理,所以这里我自己编写了一个,希望大家可以 ...

  5. Mac 下如何下载、启动和关闭Tomcat 和管理Mac自带的Apache

     Mac 下载.启动和关闭Tomcat 1. 下载Tomcat(地址:tomcat.apache.org),选择适合的版本(这里选择6.0.48),点击“Download”,之后在新页面点击“Core ...

  6. Linux centos7下设置Tomcat开机自启动

    1,centos7 使用 systemctl 替换了 service命令 参考:redhat文档: https://access.redhat.com/documentation/en-US/Red_ ...

  7. CentOS7,安装Tomcat8.5、JDK1.8,并设置开机启动(Linux CentOS Tomcat、JDK+Tomcat、Tomcat开机自启动)

    1.下载JDK1.8.Tomcat8 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.ht ...

  8. linux开机自启动设置,自定义开机启动模版,nginx开机自启动服务

    /etc/init.d 目录,我们把shell脚本放在这个目录下来作为启动脚本 都是用来放服务脚本的,当Linux启动时,会寻找这些目录中的服务脚本,并根据脚本的run level确定不同的启动级别. ...

  9. 【tomcat环境搭建】Linux和Windows下tomcat开机自启动设置

    目前很多项目都部署在tomcat上,频繁操作中,每次启动或关闭tomcat都稍显麻烦,那如何设置tomcat的开机自启动? Linux下tomcat的开机自启动设置 网上主要有两种方式,一种是shel ...

随机推荐

  1. 训练指南 UVALive - 5135 (双连通分量)

    layout: post title: 训练指南 UVALive - 5135 (双连通分量) author: "luowentaoaa" catalog: true mathja ...

  2. 机器人搬重物(BFS)

    机器人搬重物 时间限制: 1 Sec  内存限制: 128 MB提交: 22  解决: 10[提交][状态][讨论版] 题目描述 机 器人移动学会(RMI)现在正尝试用机器人搬运物品.机器人的形状是一 ...

  3. SNMP OID批量枚举工具

    SNMP OID批量枚举工具   SNMP信息包含大量的系统.设备信息.这些信息均使用OID方式表示.由于OID编号规则复杂,不便于记忆.为了快速通过OID批量获取指定信息,Kali Linux新增了 ...

  4. 【spfa】bzoj1295 [SCOI2009]最长距离

    题意:给你一个n*m的点阵.有些点是障碍,求一个欧几里得距离最大的点对(A,B),使得在移走的障碍≤T的情况下,可以从A走到B. 建图,跑n*m次spfa,求出从 每个点 出发到 其他所有点 的 经过 ...

  5. 找出能被5或6整除,但是不能被两者同时整除的数 Exercise05_11

    /** * @author 冰樱梦 * 时间:2018年下半年 * 题目:找出能被5或6整除,但是不能被两者同时整除的数 * */ public class Exercise05_11 { publi ...

  6. 利用Impromptu实现duck typing的封装

    Impromptu是一个动态生成代码实现接口的库,可以非常方便我们实现DuckType编程: public interface IUser    {        string Name { get; ...

  7. delphi执行cmd命令和bat文件

    转载地址:http://blog.csdn.net/hutao1101175783/article/details/42807063 cmd:='echo d | Xcopy '+BasePath+' ...

  8. 在Windows平台下安装与配置Memcached及C#使用方法

    1.在Windows下安装Memcached 资料来源:http://www.jb51.net/article/30334.htm 在Windows平台下安装与配置Memcached的方法,Memca ...

  9. Java集合之保持compareTo和equals同步

    在Java中我们常使用Comparable接口来实现排序,其中compareTo是实现该接口方法.我们知道compareTo返回0表示两个对象相等,返回正数表示大于,返回负数表示小于.同时我们也知道e ...

  10. jquery的confirm插件介绍

    参考:1.http://craftpip.github.io/jquery-confirm/ 2.http://www.bootcdn.cn/jquery-confirm/readme/    3.h ...