ubuntu上设置Tomcat 开机启动

一、确认 Tomcat 安装方式和JAVA_HOME

一般路径:

复制代码
/opt/tomcat

/usr/bin/java 只是一个软链接,不是 JAVA_HOME。

执行:

复制代码
readlink -f /usr/bin/java

一般会返回类似:

复制代码
/usr/lib/jvm/java-17-openjdk-amd64/bin/java

那么:

复制代码
JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64

注意:必须去掉 /bin/java

二、创建专用运行用户(推荐)

生产环境不要用 root 运行。

复制代码
sudo useradd -r -m -U -d /opt/tomcat8 -s /bin/false tomcat
sudo chown -R tomcat:tomcat /opt/tomcat8

三、创建 systemd 服务文件(完整最终版)

复制代码
sudo nano /etc/systemd/system/tomcat8.service

把下面完整复制进去:

复制代码
[Unit]
Description=Apache Tomcat 8
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64"
Environment="CATALINA_PID=/opt/tomcat8/temp/tomcat.pid"
Environment="CATALINA_HOME=/opt/tomcat8"
Environment="CATALINA_BASE=/opt/tomcat8"

ExecStart=/opt/tomcat8/bin/startup.sh
ExecStop=/opt/tomcat8/bin/shutdown.sh

Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

把 JAVA_HOME 改成你刚才查到的真实路径

五、加载并启动

复制代码
sudo systemctl daemon-reload
sudo systemctl start tomcat8
sudo systemctl enable tomcat8

六、测试状态

复制代码
sudo systemctl status tomcat8

七、以后管理命令

启动:

复制代码
sudo systemctl start tomcat8

停止:

复制代码
sudo systemctl stop tomcat8

重启:

复制代码
sudo systemctl restart tomcat8

查看日志:

复制代码
journalctl -u tomcat8 -f
相关推荐
梅孔立11 分钟前
Docker 容器网络不通:Tomcat 无法解析 MySQL、Nginx 无法反代 Tomcat 的生产级排查与治理
网络·docker·tomcat
用户41071920132512 小时前
用 systemd 从零做一个系统健康巡检服务:脚本、沙箱与磁盘满排查实战
linux·ubuntu
paopaokaka_luck13 小时前
灾害应急物资管理系统(AI应急助手、Echarts可视化数据看板、捐赠入库联动、 物资全流程管理、库存变动追溯、灾情资讯与互动反馈、物资发放公示)
java·前端·javascript·spring boot·mysql·tomcat·echarts
Linux-lucky13 小时前
46-Linux学习之旅之LVS负载均衡与keepalived高可用
linux·运维·学习·ubuntu·负载均衡·lvs
wzg201617 小时前
ubuntu通过docker镜像部署安装onlyoffice
linux·ubuntu·docker
Sw1zzle19 小时前
Go入门(零):Linux Ubuntu 22.04 安装 Go
linux·ubuntu·golang
时空无限19 小时前
ubuntu 26.04 sudo 连不上主机卡住然后失败问题处理
linux·服务器·ubuntu
qq7621182220 小时前
Ubuntu20.04
ubuntu
承渊政道20 小时前
Linux网络学习【五种IO模型与⾮阻塞IO】
linux·网络·学习·ubuntu·io模型·非阻塞io
kiros_wang1 天前
通用工具模块封装:防抖节流、参数校验公共工具类
linux·运维·ubuntu