插件窝 干货文章 linux如何设置tomcat自启动

linux如何设置tomcat自启动

Tomcat CATALINA bash HOME 305    来源:    2025-04-23

Linux下设置Tomcat自启动的方法

在Linux系统中设置Tomcat自启动有多种方法,下面介绍几种常用的方式:

方法一:使用systemd服务(推荐)

  1. 创建服务文件:

    sudo vim /etc/systemd/system/tomcat.service
    
  2. 添加以下内容(根据实际情况修改路径):

    [Unit]
    Description=Apache Tomcat Web Application Container
    After=network.target
    
    [Service]
    Type=forking
    Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
    Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
    Environment=CATALINA_HOME=/opt/tomcat
    Environment=CATALINA_BASE=/opt/tomcat
    ExecStart=/opt/tomcat/bin/startup.sh
    ExecStop=/opt/tomcat/bin/shutdown.sh
    User=tomcat
    Group=tomcat
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
    
  3. 重新加载systemd配置:

    sudo systemctl daemon-reload
    
  4. 启用并启动服务:

    sudo systemctl enable tomcat
    sudo systemctl start tomcat
    

方法二:使用init.d脚本(适用于SysVinit系统)

  1. 创建启动脚本:

    sudo vim /etc/init.d/tomcat
    
  2. 添加以下内容(根据实际情况修改):

    #!/bin/bash
    ### BEGIN INIT INFO
    # Provides:        tomcat
    # Required-Start:  $network
    # Required-Stop:   $network
    # Default-Start:   2 3 4 5
    # Default-Stop:    0 1 6
    # Short-Description: Start/Stop Tomcat server
    ### END INIT INFO
    
    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-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
    
  3. 设置权限并添加服务:

    sudo chmod 755 /etc/init.d/tomcat
    sudo update-rc.d tomcat defaults
    
  4. 启动服务:

    sudo service tomcat start
    

方法三:使用rc.local(简单但不推荐)

  1. 编辑rc.local文件:

    sudo vim /etc/rc.local
    
  2. exit 0之前添加:

    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
    /opt/tomcat/bin/startup.sh
    
  3. 设置权限:

    sudo chmod +x /etc/rc.local
    

注意事项

  1. 确保Tomcat用户有适当的权限(通常建议使用非root用户运行Tomcat)
  2. 根据实际环境修改JAVA_HOME和CATALINA_HOME路径
  3. 对于生产环境,推荐使用systemd方式
  4. 设置完成后可以使用systemctl status tomcatservice tomcat status检查服务状态

验证自启动

重启系统后,可以通过以下命令检查Tomcat是否自动启动:

ps -ef | grep tomcat

或者访问Tomcat的默认页面:

curl http://localhost:8080

选择哪种方法取决于你的Linux发行版和系统初始化方式(systemd或SysVinit)。现代Linux发行版大多使用systemd。