设置tomcat自动启动

Linux之换源、Tomcat及jdk的安装配置和设置Tomcat自动启动 换源、Tomcat及jdk的安装配置和设置Tomcat自动启动换源(CentOs更换为阿里云的源)Tomcat及jdk的安装配置和设置Tomcat自动启动上传及下载文件上传jdk和tomcat的安装文件到指定文件夹linux压缩和解压命令linux中JDK的安装与配置tomcat安装与配置Centos7下设置Tomcat开机自启动附录附录一:CentOS7防火墙查询、启动和关闭附录二:CentOS 7快速开放端口附录三:附录四: 换源(CentOs更换为阿里云的源) 确保更换之前自己是否安装wget,若 阅读详情

         Tomcat 默认情况下,不管在Windows还是Linux下,都不是作为服务来启动的。本文通过总结在Windows 和 Linux下,把Tomcat改造成服务(守护)进程的方法。
         以下均以Tomcat 6 为前提。
        主要来源:

         http://light6891.blog.163.com/blog/static/9696290920101036655926/
         http://blog.youkuaiyun.com/scs2000/article/details/1935397
         http://alohawu.blog.51cto.com/3208572/586403


         一   Windows 下 Tomcat 服务进程改造
        

安装好tomcat6后,在bin目录有这三个文件 tomcat6w.exe /tomcat6.exe / startup.bat 他们都与启动tomcat有关。

 

tomcat6.exe这个文件是用来启动tomcat的 ,双击它出现个DOS样子的窗口一闪而过消失了,tomcat也没有启动成功。双击tomcat6w.exe弹出个错误对话框,说“指定的服务并未以安装的服务存在。Unable to open the service tomcat6”。其实这两个文件要起作用,必须先为这个tomcat开通服务。

 

为tomcat开通服务:

1编辑service.bat文件。

rem Guess CATALINA_HOME if notdefined
set CURRENT_DIR=%cd%

添加下面一句指定tomcat的安装目录(%TOMCAT_PATH%为tomcat安装的绝对路径)。
     set CATALINA_HOME=%TOMCAT_PATH%
     if not "%CATALINA_HOME%" == ""goto gotHome
     set CATALINA_HOME=%cd%

为了在“进程”中跟其他安装的tomcat区分名字,修改tomcat6.exe 的文件名。这里假设修改成tomcat6018.exe。

if exist"%CATALINA_HOME%\bin\tomcat6018.exe" goto okHome
rem CD to the upper dir
cd ..
set CATALINA_HOME=%cd%
:gotHome
if exist "%CATALINA_HOME%\bin\
tomcat6018.exe" goto okHome
echo The tomcat.exe was not found...
echo The CATALINA_HOME environment variable is not defined correctly.
echo This environment variable is needed to run this program
goto end
rem Make sure prerequisite environment variables are set
if not "%JAVA_HOME%" == "" goto okHome
echo The JAVA_HOME environment variable is not defined
echo This environment variable is needed to run this program
goto end
:okHome
if not "%CATALINA_BASE%" == "" goto gotBase
set CATALINA_BASE=%CATALINA_HOME%
:gotBase
 
set EXECUTABLE=%CATALINA_HOME%\bin\
tomcat6018.exe

rem Set default Service name

创建服务后的服务名称,这个名称必须唯一。
set SERVICE_NAME=
Tomcat6018

创建服务后的服务显示名称,这个名称可以与其他服务显示名称相同。
set PR_DISPLAYNAME=Apache Tomcat 6018

 

............ (中间省略)

 

"%EXECUTABLE%"//US//%SERVICE_NAME% ++JvmOptions "-Djava.io.tmpdir=%CATALINA_BASE%\temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties"--JvmMs 128 --JvmMx 256

如果你需要把服务设置为开机自启动,可以加上下面这句(位置为文件倒数第三行前面)

sc config %SERVICE_NAME% start=auto
echo The service'%SERVICE_NAME%' has been installed.

:end
cd %CURRENT_DIR%

保存文件。

 

2  运行"cmd"命令,进入DOS界面在bin目录下对service.bat文件执行install命令,若出现以下界面说明服务安装成功。

   运行"services.msc"命令打开服务窗口,发现的确多了一个"Apache Tomcat 6018"的服务,右键查看它的属性,服务名称与显示名称都与之前在service.bat文件的设置一致。

然后,修改tomcat6w.exe的文件名,文件名必须和服务名称一样,如果服务名称与服务执行文件的名称一样,可以改名为服务名称后加"w"。像本例,服务执行文件是tomcat6018.exe,服务名称是Tomcat6018,为了防止出现文件重名冲突因此无法将tomcat6w.exe改名为Tomcat6018.exe,只能改名为tomcat6018w.exe。

现在,可以通过启动这个服务来启动tomcat,双击tomcat6018w.exe打开的界面也可以启动这个服务,启动这个服务实际上就是启动tomcat6018.exe。如果不想用服务方式启动tomcat,可以双击tomcat6018.exe或startup.bat启动。



    二 Linux Tomcat 服务进程改造
   

catalina.sh是Tomcat 启动和关闭的关键脚本,start.sh和shutdown.sh只是做了一些路径的判断,顺便带个参数过去,具体的开启和关闭是由catalina.sh来实现,故可以考虑把catalina.sh进行改造,然后设置成为系统服务即可。
        

1.首先需要用root用户将$Tomcat_HOME/bin目录下的catalina.sh脚本复制到目录/etc/init.d中,重命名为tomcat4000,文件名即为以后的服务名,并查看该文件有无执行权限,如果没有,增加执行权限;

2.修改刚才复制的tomcat4000脚本:

   a. 在脚本的开头插入下面两行(如果不需要启动时自动运行,则无需添加)

    #chkconfig: 2345 10 90

    # description:Tomcat4000 service

  第一行是服务的配置:第一个数字是服务的运行级,2345表明这个服务的运行级是2、3、4和5级(Linux的运行级为0到6);第二个数字是启动优先级,数值从0到99;第三个数是停止优先级,数值也是从0到99。(运行级介绍见附录4.2)

   第二行是对服务的描述

 

    b. 在脚本中设置CATALINA_HOME 和 JAVA_HOME 这两个脚本必需的环境变量这两个脚本必需的环境变量,如:

port="4000"

export CATALINA_HOME=/prog/tomcat/$port

export JAVA_HOME=/prog/jdk1.6.0_22

3.现在就可以用service tomcat start|stop来管理tomcat服务了

4.如果要让服务自动运行,还得将服务添加到系统中去

  切换为root用户,终端运行下列命令,将tomcat服务添加到系统服务中:
        chkconfig --add tomcat4000
       (注意:
     在tomcat文件的头两行的注释语句中,需要包含chkconfig和description两部分内容(确认不要拼写错误,),否则在执行“chkconfig --add tomcat”时,会出现“tomcat服务不支持chkconfig”的错误提示。
    chkconfig这行表示缺省启动的运行级别以及启动和停止的优先级,如该服务缺省不再任何运行级启动,则以 - 代替运行级别。在tomcat中表示脚本在运行级2、3、4、5启动,启动优先权为10,停止优先权为90。
    description行对服务进行描述,可以用 “\” 跨行注释。)

 可以使用setup命令查看系统服务(默认情况下,经过上述命令,已选择开机自动启动,如需取消,则可通过该命令,撤销)


catalina.sh本身支持强制关闭tomcat,但需要一个变量CATALINA_PID,也就是tomcat的进程号,只要我们指定了CATALINA_PID,tomcat启动时就会将进程号写入指定的文件中,所以我们可以在CATALINA_HOME 和 JAVA_HOME后面加上下面的语句:
export CATALINA_HOME=/prog/tomcat/$port
export JAVA_HOME=/prog/jdk1.6.0_22

exportCATALINA_PID=/prog/tomcat/$port/conf/catalina.pid

这样我们关闭tomcat时,就可以使用service tomcat stop –force进行强制关闭,还可以使用service tomcat stop 30 –force设置强制关闭等待时间,单位为秒,默认5秒。

注意事项:

       一旦指定CATALINA_PID,会对tomcat启停造成较大影响,启动时,脚本会检查该文件是否存在,若存在,则说明上次停止应用未成功,脚本报错,终止启动过程。停止时,脚本会检查该文件是否存在,若不存在,脚本报错,终止停止过程;若存在,而脚本找不到文件中的进程号,脚本报错,终止停止过程。所以只要所有的启停都通过service命令来操作,则不会有问题,若直接调用tomcat\bin目录下的脚本进行启停,或者系统异常关闭,导致CATALINA_PID未能正常删除,则会对调用service造成影响,需要手动进行CATALINA_PID文件的删除等操作。必要时,可考虑修改脚本绕过一些判断。



经过上述改造后,命令集如下:
     停服务 service tomcat4000 stop 无 等同于调用tomcat本身的shutdown.sh,不会强制杀进程来停止应用
              -force 服务未停止时杀进程,默认等待时间为5秒,可通过修改服务脚本中的“SLEEP=5”,修改默认等待时间
            30 -force “整数n“+“-force”, 服务未停止时杀进程,等待时间为n秒
     启服务 service tomcat4000 start 无 等同于调用tomcat本身的starup.sh 


    后记: 
             改造Tomcat作为服务进程 ,主要是为了UAT环境/生产环境执行命令方便,不需切换目录;
            在实际项目中,是和Hudson打包发布结合使用的;在测试中发现,tomcat进程停掉后,要等一会,通讯端口才能完全释放;即 TIME_WAIT状态还需要等2MSL()后才能返回到CLOSED状态,如在TIME_WAIT状态就启动tomcat,则无法建立Listen端口,在实际中,我采用了Sleep(60)后,在启动tomcat方法。
   
     
【深度解析】AURIX TC387 UCB Flash架构与避坑指南(第一篇) 摘要:UCB(用户配置块)是AURIX TC3xx芯片启动与安全的关键配置区域,位于DFLASH0存储区。每个512字节的UCB包含启动模式、安全设置等关键参数,并通过强制CRC32校验确保完整性。UCB分为启动头(UCB_BMHD)、安全配置(UCB_ORIG)及其备份(UCB_COPY)三种主要类型。不同于常规Flash,UCB具有自动擦除特性,错误配置可能导致芯片永久锁死。开发中应谨慎修改UCB,必须同时编程原始和备份版本,并确保正确的CRC校验。后续文章将详细介绍UCB编程方法和调试技巧。 阅读详情

相关推荐

(程序设计方法与实践)达拉崩吧的酒宴

达拉崩吧的酒宴 Description 很久很久以前,巨龙突然出现,带来灾难带走了公主又消失不见,王国十分危险,世间谁最勇敢,一位勇者赶来大声喊:“我要带上最好的剑,翻过最高的山,闯进最深的森林,把公主带回到面前”……最后,英雄 达拉崩巴斑得贝迪卜多比鲁翁 ,他战胜了巨龙 昆图库塔卡提考特苏瓦西拉松 ,国王把公主 米娅莫拉苏娜丹妮谢莉红 嫁给了 达拉崩巴斑得贝迪卜多比鲁翁 。 于是国王第二天要在 蒙达鲁克硫斯伯古比奇巴勒城 举办酒宴,一共准备了 N 桶酒。此时一位忠诚的仆人来报,有人在其中一桶酒里下毒,

What_If_I的博客 892

tomcat6w.exe 启动

先安装服务 service.bat install [服务名] 再启动tomcat6w.exe

xttifqqk的专栏 349

用python自动复制粘贴excel表里某一列的数据到另一个表中

昨天接到人事小姐姐求助减轻复制粘贴的重复工作量,分享一下代码 半路新手上路 耶 把 2.xlsx 表里的第二列 的数据复制粘贴到 test.xlsx的第一列 python3.6.2 from openpyxl import Workbook from openpyxl import load_workbook from openpyxl.writer.excel import Exc...

weixin_33854644的博客 2万+

在windows下 配置 tomcat6.0 开机自启动

1:先用记事本等打开 D:/Tomcat6.0.24/bin/service.bat 文件,找到最后几句,在这句的最后加上参数:   --Startup=auto  ,前面要有空格!如下所示: "%EXECUTABLE%" //US//%SERVICE_NAME% --JvmOptions "-Dcatalina.base=%CATALINA_BASE%;-Dcatalina.ho

snowfoxmonitor的专栏 3020

虚拟机ubuntu22.04.3中安装vitis2024.1注意事项

虚拟机ubuntu安装vitis2024.1

qq_52033578的博客 2495

CANoe实战:LIN Slave一致性测试全流程解析

本文详细解析了使用CANoe进行LIN Slave一致性测试的全流程,包括测试概述、环境搭建、模块集成、测试用例详解及报告分析。通过实际案例分享,帮助工程师掌握LIN 2.0/2.1/2.2、SAE J2602和ISO 17987等标准的自动化测试方法,提升汽车电子从节点的可靠性和兼容性验证效率。

weixin_42665725的博客 533

Tomcat—— 2.命令

1.catalina.sh [root@node2 bin]# ./catalina.sh --help Using CATALINA_BASE: /share/soft/tomcat9 Using CATALINA_HOME: /share/soft/tomcat9 Using CATALINA_TMPDIR: /share/soft/tomcat9/temp Using JRE_HOM...

blueicex2017的博客 1225

微信DAT图片解密全攻略:一键转换JPG/PNG/GIF

本文详细解析了微信电脑版中DAT图片的加密原理与存储路径,并提供了从定位文件到使用专业工具进行一键解密的完整操作指南。通过简单的步骤,用户可将加密的DAT文件无损还原为JPG、PNG或GIF格式,有效解决无法直接查看聊天图片的难题,同时兼顾了隐私清理与磁盘空间管理。

hill8的博客 1365

TomCat设定pid文件

修改$TOMCAT_HOME/bin/catalina.sh文件,大约在128行左右,在PRGDIR下面一行添加CATALINA_PID参数行,修改完成后应该跟下面相同。CATALINA_PID=$PRGDIR/CATALINA_PID也可以自定义pid路径,例如“CATALINA_PID=/var/run/tomcat.pid”...

m0_67401228的博客 1672

AI工程化之生成式UI & A2UI(二)

本文介绍了生成式UI框架A2UI的架构设计与核心实现。项目采用AI协作开发模式,通过ATDD(AI驱动的测试驱动开发)确保代码质量。前端SDK基于zustand实现框架无关的状态管理,包含协议解析器、存储管理、渲染器等核心模块。重点展示了基础store构建、A2UI协议解析器的实现过程,包括mock数据准备、测试用例生成和可视化调试。项目采用monorepo管理,利用vite实现高效开发构建。整个系统设计遵循模块化原则,通过清晰的接口定义实现各组件解耦,为后续功能扩展打下基础。

qq_34306228的博客 407

4、风险管理、信息安全与信息管理的核心原则

本文深入探讨了风险管理、信息安全与信息管理的核心原则,涵盖Risk IT框架、ISO 31000标准以及信息安全与信息管理的关键原则。通过案例分析与实际应用挑战的解析,帮助组织更好地应对数字化时代的风险与安全问题,实现可持续发展。

bread的博客 120

CentOS 安装 tomcat 并设置 开机自启动

其中tomcat.pid文件本身不存在,设置之后,启动Tomcat会自动生成。http://服务器IP地址:8080。

桃李不言下自成蹊 3万+

Yolov8-pose关键点检测:loss优化 | LRM loss困难样本挖掘,提升难样本、遮挡物等检测精度

LRM loss应用到能够大幅提升pose遮挡物性能

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 1715

启动tomcat的命令_如何将Tomcat设置为自动启动的服务最快捷方法

将Tomcat设置为自动启动的服务:最近遇到了个问题,服务器上的项目突然访问不了,就上服务器去重启了tomcat服务,谁知道到最后tomcat的服务报错了,重新启动服务的选项也没有,之前这个项目也不是我部署的,所以研究了下怎么将tomcat设置到服务里边去,毕竟谁也想天天去手动的去启动tomcat吧第一步:使用cmd命令进入到你的tomcat文件下的bin目录,我的tomcat在D盘第二步:输入s...

weixin_39926103的博客 1052

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Linux下tomcat的开机自动启动设置

首先,切换到root用户权限下: 执行 命令 : vim /etc/init.d/tomcat 脚本说明:JRE_HOME jdk路径 和 tomcat使用的jdk要保持一致 CATALINA_HOME 和CATALINA_BASE 保持一致即可都为tomcat路径 注意:su jenkins -c 这段话表示使...

DaySurprise的博客 438

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

linux设置tomcat开机自动启动

设置方法 1、修改/etc/rc.d/rc.local,使用vi /etc/rc.d/rc.local 命令 2、在/etc/rc.d/rc.local文件最后添加下面两行脚本 1 2 export JAVA_HOME=/usr/local/jdk1 /usr/local/tomcat/bin/startup.sh start  /us...

Mr·葛 1万+

tomcat修改自动部署与启动时间设置

1、tomcat修改自动部署设置2、启动时间设置

码生剑气-方方圆圆 2331

tomcat怎么设置开机自动启动

tomcat怎么设置开机自动启动 安装服务:进入安装目录-> bin ,,在空白处按住shift+鼠标右键 -> 在此处运行命令窗口,将service.bat文件拖拽到命令窗口中,按enter键运行,出现了“Usage: service.bat install/remove [service_name] [/user username] ”提示后,输入service.bat insta...

qq_33508523的博客 1951

在windows 下如何将 Tomcat设置为自动启动的服务

在windows下如何将Tomcat设置为自动启动的服务     承元OA基于J2ee技术开发,可以运行在Tomcat、weblogic、websphere等J2ee应用服务器上,对于一般访问量不是很高的客户我们推荐使用Tomcat(开源免费),一般情况下Tomcat服务需要手动运行批命令启动服务。在windows操作系统下如果需要将Tomcat变成自动启动的服务,只需按以下步骤操作即可

2613

tomcat服务设置开机自动启动模式!

在正式环境中,经常需要设置tomcat自启动,这样在重启系统服务器后就不需要再手动去开启tomcat服务器了。通过设置tomcat下的service.bat可以实现自启动的目的,但有时候会发现自己的tomcat下竟然没有service.bat,这种情况该怎么办呢? 2.下面这个版本是tomcat6.0.41版本,可以看到它里面是没有service.bat的。 网上好多方法是从其他版

Rundy_Deng的博客 3541

将Tomcat设置为自动启动的服务两种方法

第一种:windows 开机启动Bat文件开始菜单——运行——输入gpedit.msc——本地组策略编辑器——计算机配置——Windows设置——脚本(启动/关机)——双击右侧的启动——弹出启动属性对话框——添加——找到你要添加到程序或批处理文件——确定第二种:将Tomcat设置为自动启动的服务第一步:使用cmd命令进入到你的tomcat文件下的bin目录,我的tomcat在D盘第二步:输入ser...

耳畔的声的博客 7092

设置tomcat启动超时,不会自动停止

tomcat启动时如果1000ms没有起来,服务就会自动停止。设置位置如下

weixin_34043301的博客 197

将Tomcat设置成自动启动的服务

在windows操作系统下如果需要将Tomcat变成自动启动的服务,只需按以下步骤操作即可:   1、在环境变量中设置JAVA_HOME (假设我们缺省的JDK目录为d:\j2sdk1.4.2_04) A、进入windows桌面,右键选择“我的电脑”-->“属性” B、选择“高级”页签,点开“环境变量” C、在“系统变量”下点击新建弹出“新建系统变量”,变量名输入“JAVA_HOME”,变量值输入

694

设置Tomcat为自动启动的服务

承元OA基于J2ee技术开发,可以运行在Tomcat、weblogic、websphere等J2ee应用服务器上,对于一般访问量不是很高的客户我们推荐使用Tomcat(开源免费),一般情况下Tomcat服务需要手动[size=small][/size]运行批命令启动服务。在windows操作系统下如果需要将Tomcat变成自动启动的服务,只需按以下步骤操作即可: 1、在环境变量中设置JAVA_H...

iteye_19210的博客 161

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

Centos7 安装配置 tomcat并设置自动启动 下载安装包 这里选择适合Linux的安装包,下载到本地后上传到centos服务器,或者直接通过wget命令下载 1 2 3 4 #cd/usr/local/ #mkdirtomcat/ #cdtomcat/ #wgethttp...

YunWisdom 575

Windows下将nginx和tomcat设置为自动启动的步骤方法

Windows下将nginx和tomcat设置为自动启动的步骤方法

傲世狂少 4535

tomcat设置为系统服务自动启动

cmd =》cd 到tomcat的bin文件中,然后执行service install 自定义名 执行完成就可以到系统服务器启动tomcat,配置自动启动

weixin_42861564的博客 470
上一篇: Tomcat启动脚本catalina.sh---解读
下一篇: TCP连接的状态转换
sun8288
博客等级 码龄22年 10粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值