在 Debian 上升级 Tomcat,常见有三种方式,最推荐的是“手动安装新版 Tomcat(官方二进制包)”,因为 Debian 官方源里的 Tomcat 版本通常比较旧。
下面按最常用、最安全的方式一步一步说明。
catalina.sh version
或
/usr/share/tomcat9/bin/version.sh
dpkg -l | grep tomcat
tomcat9 / tomcat10 → apt 安装/opt/tomcat 或 /usr/local/tomcat → 手动安装systemctl stop tomcat
或
/opt/tomcat/bin/shutdown.sh
cp -a /opt/tomcat /opt/tomcat_backup
查看最新版本:https://tomcat.apache.org/
cd /opt
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.xx/bin/apache-tomcat-10.1.xx.tar.gz
解压:
tar -xzf apache-tomcat-10.1.xx.tar.gz
mv apache-tomcat-10.1.xx tomcat-10
重点目录:
server.xml
context.xml
web.xml
/usr/share/tomcat/conf → 新 conf
/var/lib/tomcat/webapps → 新 webapps
例如:
cp /opt/tomcat/conf/server.xml /opt/tomcat-10/conf/
cp -r /opt/tomcat/webapps/* /opt/tomcat-10/webapps/
chown -R tomcat:tomcat /opt/tomcat-10
chmod +x /opt/tomcat-10/bin/*.sh
rm /opt/tomcat
ln -s /opt/tomcat-10 /opt/tomcat
/opt/tomcat/bin/startup.sh
⚠️ 不推荐生产环境
apt update
apt upgrade
升级 Tomcat 主版本(如 9 → 10)一般 不会自动完成,需要:
apt install tomcat10
然后手动迁移配置。
Tomcat 10 使用 Jakarta EE,包名从:
javax.*
变成:
jakarta.*
✅ 如果你 不是自己写的代码,很可能需要:
jakartaee-migration 工具# 启动状态
systemctl status tomcat
# 端口监听
ss -lntp | grep 8080
# 日志
tail -f /opt/tomcat/logs/catalina.out
tomcat 用户运行systemd 管理服务如果你愿意,可以告诉我:
我可以给你 完全针对你环境的升级命令。