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

相关推荐
去伪存真4 分钟前
从乱码到高精度检索:探矿业务中 TXT、Word、PDF 与网页的 RAG 清洗之道
前端·agent
两个西柚呀13 分钟前
JS事件总结
前端·javascript·css
小狼1545417 分钟前
拼多多订单数据导出 CSV 实战:接口分页、字段平铺与 5 个数据坑,多多开票助手
java·前端·javascript
ss27339 分钟前
AI全栈实战 | 2.2-02 React 思维模型:数据不可变 vs Vue 数据可变,两种哲学把复杂度推给谁
前端·vue.js·react.js
天衍四九-43 分钟前
Docker Compose企业实战系列(三):Vue/React前端项目容器化完整部署
前端·vue.js·docker
Rosanci1 小时前
从零到合入主线:我的 DeepSeek Harness 开源贡献实战手记
开发语言·前端·开源
用户960819842231 小时前
多周期联看时十字光标对不齐:前端排查「时间桶」的三步清单
前端
Data analyse4561 小时前
数据合规的敏感数据怎么识别?
前端·人工智能·数据分析
陪我一起学编程2 小时前
vue3笔记
前端·webpack·vue3·vite·脚手架·vue3笔记·组件式
object not found2 小时前
WooCommerce 接入 KPay 后订单完成页不显示订单信息:returnUrl 动态参数问题解决
前端·wordpress·独立站支付