温馨提示×

Debian怎么配置Tomcat自启

小樊
41
2026-08-20 08:30:31
栏目: 智能运维

在 Debian 系统上配置 Tomcat 开机自启,常见做法取决于你使用的 Debian 版本 以及 Tomcat 的安装方式。下面给你几种最常用、最稳妥的方案,按推荐程度排序。


✅ 推荐方案一:使用 systemd(Debian 8+,最常见)

一、前提条件

  • Debian 8 及以上(systemd)
  • Tomcat 解压安装在 /opt/tomcat/usr/local/tomcat
  • 已配置好 JAVA_HOME

二、创建 Tomcat systemd 服务文件

sudo nano /etc/systemd/system/tomcat.service

示例内容(请按你实际路径修改):

[Unit]
Description=Apache Tomcat Web Application Container
After=network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

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

User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

三、创建专用 Tomcat 用户(推荐)

sudo useradd -r -m -U -d /opt/tomcat -s /bin/false tomcat
sudo chown -R tomcat:tomcat /opt/tomcat

四、启用并启动 Tomcat

sudo systemctl daemon-reload
sudo systemctl start tomcat
sudo systemctl enable tomcat

五、验证

systemctl status tomcat

浏览器访问:

http://服务器IP:8080

✅ 方案二:使用 init.d(老版本 Debian 7 及以下)

如果你使用的是 Debian 7 或更早版本(无 systemd):

1️⃣ 创建启动脚本

sudo nano /etc/init.d/tomcat

示例:

#!/bin/bash
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export CATALINA_HOME=/opt/tomcat

case "$1" in
start)
  $CATALINA_HOME/bin/startup.sh
  ;;
stop)
  $CATALINA_HOME/bin/shutdown.sh
  ;;
restart)
  $CATALINA_HOME/bin/shutdown.sh
  sleep 5
  $CATALINA_HOME/bin/startup.sh
  ;;
esac
exit 0

2️⃣ 赋予执行权限

sudo chmod +x /etc/init.d/tomcat

3️⃣ 设置开机自启

sudo update-rc.d tomcat defaults

✅ 常见问题排查

1️⃣ Tomcat 启动但无法访问

  • 检查端口:
ss -lntp | grep 8080
  • 防火墙:
sudo ufw allow 8080

2️⃣ systemctl enable 失败

确认:

systemctl is-enabled tomcat

3️⃣ 权限问题

sudo chown -R tomcat:tomcat /opt/tomcat

✅ 总结(推荐)

Debian 版本 推荐方式
Debian 8+ ✅ systemd
Debian 7 及以下 init.d

如果你愿意,可以告诉我:

  • Debian 具体版本(cat /etc/debian_version
  • Tomcat 版本
  • 安装路径

我可以帮你直接生成一份完全可用的配置文件

0