Linux 下通过 XShell 手动更新 Tomcat 应用并重启

背景:

五六年前的时候,我在工作中发版项目,需要先打包,后部署到tomcat上,之后在linux中启动服务,当时记得命令是service xxx restart 启动。后来换几次工作都不需要自己来部署项目,或者是有自动化的部署工具,没用过原生的启动命令,最近接手的项目刚好又涉及到tomcat部署发版,但发现命令用的sh startup.sh,而不是记忆中的service xxx restart,所以搜了一下原因,整理一下

工具:

XShell

步骤:

  1. 上传文件

(Xftp操作)

  1. 返回根目录

cd /opt/apache-tomcat-9.0.90

  1. 停止服务

./bin/shutdown.sh

  1. 确认停止

ps -ef | grep tomcat

  1. 强制停止

kill -9 <PID>

  1. 启动服务

sh startup.sh

  1. 查看日志

tail -f logs/catalina.out

记忆中为什么有service xx restart

记忆中的 service xx restart 是 Linux 系统中用于重启指定服务的传统命令1, 2, 3。

它属于 SysVinit 服务管理体系,在现代主流的 Linux 发行版(如 CentOS 7+、Ubuntu 16.04+)中,虽然为了兼容性仍然可以使用,但已被 systemctl 命令取代2, 3。

新旧命令对比

特性 service xx restart(旧) systemctl restart xx(新)
所属体系 SysVinit2, 3 systemd2
当前状态 兼容模式,逐渐淘汰3 现代 Linux 标准命令2
功能 重启指定服务1, 2, 3 重启指定服务2, 7
适用系统 CentOS 6及更早版本2 CentOS 7+、Ubuntu 16.04+2
  1. 优先使用 systemctl

    在你当前的服务器环境中,建议直接使用 systemctl restart xx。它是 systemd 体系下的标准命令,功能更强大,与系统服务管理深度集成2。

  2. 虽然 service tomcat restart 或 systemctl restart tomcat 可以重启 Tomcat,但对于 Tomcat 应用更新,仍强烈建议优先使用其自带的 ./bin/shutdown.sh 和 ./bin/startup.sh 脚本

相关推荐
程序员海军5 小时前
用了两年多 GPT,我最近开始换模型了,还折腾了个求职避坑 Agent
前端·人工智能·后端
zttbee6 小时前
echarts图表tooltip色块失效
前端·javascript·echarts
excel7 小时前
IndexNow:让搜索引擎更快发现网站更新的主动通知协议
前端·后端·架构
子兮曰8 小时前
CSS 复现 23 种设计风格:从拟物到液态玻璃的成本阶梯与兜底写法【实战】
前端·css·视觉设计
虚无境8 小时前
如何用AI帮我写出实用的插件
前端·javascript·ai编程
柳杉9 小时前
从数字化到数智化:3D 可视化大屏的下一个五年
前端·ai编程·数据可视化
风骏时光牛马9 小时前
从零到实战:AI全栈学习进阶路线
前端
FRing0310 小时前
JavaScript入门到精通二十六(变量提升、函数剩余参数、展开运算符、ES6箭头函数)
开发语言·前端·javascript·es6·箭头函数
用户3600555790010 小时前
Kestrel_VLLM - 15 · decode 优化四连击:19ms → 8ms
前端
IT_陈寒10 小时前
JavaScript的闭包陷阱,这个坑我躺了三天才爬出来
前端·人工智能·后端