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 脚本

相关推荐
曦樂~15 小时前
【Web Development】02 CSS
前端·css
风骏时光牛马15 小时前
后端服务接口开发与数据逻辑处理
前端
东鹏特饮15 小时前
经典打砖块(Breakout)游戏
前端·css·css3
IT_陈寒16 小时前
Vite的HMR把我整不会了:一个生产环境的热更新坑
前端·人工智能·后端
Mh16 小时前
如何使用双缓冲优化视频切换
前端
risenav16 小时前
低头蓄力,抬头起跳:《萤虫跳跳》的 Rokid AIUI 开发实战
前端
ZhengEnCi16 小时前
如何看待 Fable 5.2 用纯代码生成 1.4MB 视觉作品:光追、水面、倒影、火光的程序化生成原理
前端
再吃一根胡萝卜17 小时前
DSH 插件的 Host 与 Client:为什么「只加载了 Host」,以及要不要自己写 Client 加载器
前端
parade岁月17 小时前
AI 写的前端代码为什么总像 5 年前的?Chrome 官方出手了
前端
tryCbest18 小时前
Vue系列——第 15 篇:内置组件全家桶——Transition、Teleport、Suspense、KeepAlive
前端·vue.js