温馨提示×

Debian怎么设Tomcat自启

小樊
37
2026-10-03 12:34:44
栏目: 智能运维

在 Debian 上设置 Tomcat 开机自启,推荐用 systemd(Debian 8+ 默认)。下面以 Tomcat 9 为例,其他版本类似。


一、准备工作

假设:

  • Tomcat 解压在:/opt/tomcat
  • Java 已安装(如 /usr/lib/jvm/java-11-openjdk-amd64)

确认 Java:

which java
java -version

二、创建 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
Environment=JAVA_OPTS=-Djava.awt.headless=true

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

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

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

四、启用并启动 Tomcat

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

查看状态:

sudo systemctl status tomcat

五、验证自启

重启测试:

sudo reboot

重启后访问:

http://服务器IP:8080

六、常见问题

1. 端口被占用

sudo netstat -tlnp | grep 8080

2. 启动慢(熵池问题)

可加:

Environment=JAVA_OPTS=-Djava.security.egd=file:/dev/./urandom

3. Debian 7 及更早(sysvinit)

用 /etc/init.d/tomcat + update-rc.d tomcat defaults


如果你告诉我:

  • Tomcat 版本
  • 安装方式(apt 还是手动解压)
  • Debian 版本

我可以给你完全对应的配置。

0 踩