tomcat设置开机自启动服务

时间:2021-09-14 15:37:34

windows环境下:

1. 安装JDK,设置JAVA环境变量


    JAVA_HOME=D:\Program Files\Java\jdk1.6.0_30  

    CLASSPATH=D:\Program Files\Java\jdk1.6.0_30\lib\dt.jar;D:\Program Files\Java\jdk1.6.0_30\lib\tools.jar

    PATH变量里面加入:;D:\Program Files\Java\jdk1.6.0_30\bin

2. 配置Tomcat

   (1)将下载的apache-tomcat-6.0.35-windows-x86.zip压缩包解压。

   (2).(3)步骤也可改为设置操作系统的环境变量JAVA_HOME 和 CATALINA_HOME

   (2)修改\bin\startup.bat文件,在第一行前面加入如下两行:
            
            SET JAVA_HOME=D:\Program Files\Java\jdk1.6.0_30   (JDK安装所在的路径)
            SET CATALINA_HOME=D:\Program Files\tomcat6.0.35   (免安装的Tomcat解压后的路径)
          
          如果需要使用shutdown.bat关闭服务器的话,也按照上面加入两行。

     (3)这样,运行startup.bat就可以启动Tomcat,跑起应用,运行shutdown.bat就可以关闭服务器了。

     (4)修改\conf\tomcat-users.xml文件,设置tomcat的管理员帐号(可设也可不设,以后再修改也行):
            在<tomcat-users>标签内加入
       <role rolename="manager-gui"/>
       <user username="tomcat" password="tomcatadmin" roles="manager-gui"/>

            这样才可以使用Tomcat的管理界面。

3. 免安装版的Tomcat做成服务,随机器启动(windows环境):

     (1)修改\bin目录中的service.bat:(rem是注释行)
    
            rem 在第一个if语句的前面一行添加下面的行:
            SET CATALINA_HOME=D:\Program Files\tomcat6.0.35
            rem 上面这一行是设置CATALINA_HOME变量指到解压后的Tomcat目录
            
            如果从来没有安装过Tomcat,或者保证Services.msc启动服务管理器检查没有Apache Tomcat系统服务,到此你就可以转到第二步了。
     否则继续往下走:
    
            按照下面的描述修改下面的相应的几行,每行下面都附有文字说明设置的作用:
            
            set SERVICE_NAME=tomcat6.0
          rem 上面一行,将tomcat6.0修改成你需要的服务名,这个将是以后使用net start/stop来操作的服务名称。
          
            set PR_DISPLAYNAME=Apache Tomcat
            rem 上面一行,Apache Tomcat改为你需要显示的服务名,这个将显示在服务管理器中。
            
            set PR_DESCRIPTION=Apache Tomcat Server - http://jakarta.apache.org/tomcat
            rem 这一行改不改无所谓,是服务的描述,根据自己的喜好决定吧。

   (2)运行cmd打开控制台,进入解压后的Tomat目录的/bin文件夹下,运行service.bat install命令:
               
            D:\Program Files\tomcat6.0.35\bin>service.bat install
            Installing the service 'tomcat6.0' ...
            Using CATALINA_HOME:    "D:\Program Files\tomcat6.0.35"
            Using CATALINA_BASE:    "D:\Program Files\tomcat6.0.35"
            Using JAVA_HOME:        "D:\Program Files\Java\jdk1.6.0_30"
            Using JVM:              "D:\Program Files\Java\jdk1.6.0_30\jre\bin\server\jvm.dl
            l"
            The service 'tomcat6.0' has been installed.

            
            程序提示:The service 'tomcat6.0(你修改以后的SERVICE_NAME)' has been installed
            说明服务Tomcat已经被安装成功。
            
            相应的,运行service.bat remove可以移除服务。
            
     (3)到这里,服务添加成功,运行services.msc,可以看到添加的服务,默认状态下该服务是手动运行的,在它的属性中,
    
     将启动类型更改为"自动",以后机器启动以后Tomcat就在后台启动了。


Linux环境下:

linux设置tomcat自动启动在centos下,开机后会自动执行/etc/rc.local中的命令,平时启动tomcat的命令为tomcat_home/bin/startup.sh或tomcat_home/bin/catalina.sh start,当直接把他们任何一个加入到/etc/rc.local中,重启机器后发现tomcat并没有启动。原因是开机时java的环境还没有设置好,故自己写一个脚本,先设置java环境然后再启动,脚本如下:

(linux环境下查看jdk安装路径的命令为:echo $JAVA_HOME)

.代码如下:
export JAVA_HOME=/usr/lib/jvm/java-7-sun
export PATH=$JAVA_HOME/bin/:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CLASSPATH
export CATALINA_HOME=/usr/lib/tomcat/apache-tomcat-7.0.57/
/usr/lib/tomcat/apache-tomcat-7.0.57/bin/catalina.sh start


假设保存成一个名为auto-startup.sh的文件存放在/usr/lib/tomcat/apache-tomcat-7.0.57/bin下,然后在/etc/rc.local加入/usr/lib/tomcat/apache-tomcat-7.0.57/bin/auto-startup.sh即可。注意:需要设置auto-startup.sh有执行权限(root账号下执行 chmod +x auto-startup.sh)