Linux下Tomcat开机自动启动

转载 2015年11月20日 10:32:05
 

Linux下Tomcat开机自动启动

标签: Linuxtomcatshell启动
 1731人阅读 评论(0) 收藏 举报
 分类:
 

目录(?)[+]

Linux下tomcat开机自动启动有两种方法,一种是简单,一种是复杂而又专业的,使用shell脚本要实现,我们一般推荐shell脚本启动方式。下面我们分别介绍这两种方法。

1.shell脚本启动

众所周知,在Linux中设置开机自启动的服务,需要在/etc/rcX.d下挂载。除此之外还需要在/etc/init.d下些启动脚本。其实很简单,先export出所需要的环境变量,例如JAVA_HOME,JRE_HOME, CATALINA_HOME, CATALINA_BASE什么的,然后再直接调用$CATALINA_HOME/bin/startup.sh就能成功启动。


第一步:我们在/etc/init.d下新建一个文件tomcat(需要在root权限下操作)

  1. vi /etc/init.d/tomcat  

写下如下代码,tomcat自启动脚本:

  1. #!/bin/sh  
  2. # chkconfig: 345 99 10  
  3. # description: Auto-starts tomcat  
  4. # /etc/init.d/tomcatd  
  5. # Tomcat auto-start  
  6. # Source function library.  
  7. #. /etc/init.d/functions  
  8. # source networking configuration.  
  9. #. /etc/sysconfig/network  
  10. RETVAL=0  
  11. export JAVA_HOME=/usr/java/jdk1.7.0_60  
  12. export JRE_HOME=/usr/java/jdk1.7.0_60/jre  
  13. export CATALINA_HOME=/usr/local/tomcat  
  14. export CATALINA_BASE=/usr/local/tomcat  
  15. start()  
  16. {  
  17.         if [ -f $CATALINA_HOME/bin/startup.sh ];  
  18.           then  
  19.             echo $"Starting Tomcat"  
  20.                 $CATALINA_HOME/bin/startup.sh  
  21.             RETVAL=$?  
  22.             echo " OK"  
  23.             return $RETVAL  
  24.         fi  
  25. }  
  26. stop()  
  27. {  
  28.         if [ -f $CATALINA_HOME/bin/shutdown.sh ];  
  29.           then  
  30.             echo $"Stopping Tomcat"  
  31.                 $CATALINA_HOME/bin/shutdown.sh  
  32.             RETVAL=$?  
  33.             sleep 1  
  34.             ps -fwwu root | grep tomcat|grep -v grep | grep -v PID | awk '{print $2}'|xargs kill -9  
  35.             echo " OK"  
  36.             # [ $RETVAL -eq 0 ] && rm -f /var/lock/...  
  37.             return $RETVAL  
  38.         fi  
  39. }  
  40.   
  41. case "$1" in  
  42.  start)   
  43.         start  
  44.         ;;  
  45.  stop)    
  46.         stop  
  47.         ;;  
  48.                                                   
  49.  restart)  
  50.          echo $"Restaring Tomcat"  
  51.          $0 stop  
  52.          sleep 1  
  53.          $0 start  
  54.          ;;  
  55.  *)  
  56.         echo $"Usage: $0 {start|stop|restart}"  
  57.         exit 1  
  58.         ;;  
  59. esac  
  60. exit $RETVAL  
这里特别提醒注意这一句ps -fwwu root | grep tomcat|grep -v grep | grep -v PID | awk '{print $2}'|xargs kill -9,熟悉Linux命令的人应该都清楚这句话的意义,这里就简单说下前半部分,查询root用户下tomcat的进程PID,个人根据实际情况修改。

第二步:保存退出之后,给其增加可执行权限

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

第三步:挂载

 将这个shell文件的link连到/etc/rc2.d/目录下。linux的/etc/rcX.d/目录中的数字代表开机启动时不同的run level,也就是启动的顺序,Ubuntu9.10下有0-5六个level,不能随便连到其他目录下,可能在那个目录中的程序启动时Tomcat所需要的一些库尚未被加载,用ln命令将tomcat的链接链过去:sudo ln -s /etc/init.d/tomcat /etc/rc2.d/S16Tomcat。rcX.d目录下的命名规则是很有讲究的,更具不同需要可能是S开头,也可能是K开头,之后的数字代表他们的启动顺序,详细看各自目录下的Readme文件。

  1. ln -s /etc/init.d/tomcat /etc/rc2.d/S16Tomcat  

第四步:设置脚本开机自启动

把这个脚本设置成系统启动时自动执行,系统关闭时自动停止,使用如下命令:

  1. chkconfig --add tomcat  

第五步:验证

执行 sudo reboot。重启之后就会发现,Tomcat已经成功运行了。


题外话:添加这个脚本之后我们启动,停止,重启tomcat可以直接用命令

  1. service tomcat start  
  2. service tomcat stop  
  3. service tomcat restart  

另外一些tomcat设置命令有: chkconfig --list tomcat      chkconfig  tomcat on,大家可以试试看有什么效果。


2.修改系统文件

1.修改/etc/rc.d/rc.local   
  1. vi /etc/rc.d/rc.local   

2.添加下面两行脚本,记住是两行,仅仅第二行不行,必须加第一行。在/etc/rc.d/rc.local文件最后加上:
  1. export JAVA_HOME=/usr/java/jdk1.7.0_60  
  2. /usr/local/tomcat/bin/startup.sh start  
说明:/usr/java/jdk1.7.0_60 是jdk安装目录
         /usr/local/tomcat是tomcat安装的目录

3.注意:修改rc.local文件为可执行
  1. chmod +x  rc.local  

Linux之Tomcat开机自动启动

开机自动启动tomcat,有好几种,我说其中一种; 1、安装好tomcat后,拷贝tomcat目录下面/bin下面的catalina.sh到/etc/init.d下面  重命名为tomcat; 2、编...
  • zhengxiangwen
  • zhengxiangwen
  • 2016年07月08日 23:20
  • 1368

Linux中安装多个Tomcat并设置开机启动

安装第一个Tomcat把apache-tomcat-8.5.20.tar.gz传到/usr/local目录下执行如下命令进行解压tar -xvf apache-tomcat-8.5.20.tar.gz...
  • zsx157326
  • zsx157326
  • 2017年11月29日 15:47
  • 428

Linux下Tomcat开机自动启动

Linux下tomcat开机自动启动有两种方法,一种是简单,一种是zhu
  • wangli61289
  • wangli61289
  • 2014年07月18日 12:32
  • 25857

windows下tomcat设置开机自启

本帖可能比较啰嗦,但是做到本人所知的尽可能详细。 一、安装JDK 根据自己操作系统的位数(32、64)选择对应的JDK,分为安装版和非安装版。(如下图,都可以在apache官网进行下载,安装直接点...
  • kangcool_sn
  • kangcool_sn
  • 2017年09月21日 16:01
  • 560

tomcat随windows自动启动

一:确保tomcat 在点击bin\startup 文件可以正常启动访问; 二:本机安装有JDK; 三:本机环境变量配置:JAVA_HOME:C:\Java\jdk1.7.0_17; 四:本机Tomc...
  • jinjianghai
  • jinjianghai
  • 2016年11月03日 15:52
  • 681

linux下启动、关闭tomcat,linux设置tomcat开机自启动

1 启动关闭tomcat 进入tomcat安装目录的bin目录下: cd /tomcat6/bin   (此处为你安装的tomcat路径) 启动:./startup.sh   或者 ./catal...
  • qq_21033663
  • qq_21033663
  • 2015年12月31日 17:23
  • 673

Linux下Tomcat开机自动启动——wangli61289

关闭 wangli61289的专栏 Linux下Tomcat开机自动启动 标签: Linuxtomcatshell启动 Linux下tomcat开机自...
  • ma15732625261
  • ma15732625261
  • 2017年10月25日 21:03
  • 266

Apache Tomcat 开机后自动启动

Tomcat 是Apache 软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些个人及个人共同开发而成,由于有了S...
  • GIS_BT
  • GIS_BT
  • 2017年03月01日 13:08
  • 425

ubuntu tomcat开机自动启动

Tomcat自动启动+内存溢出 就目前来讲,关于tomcat自动启动的文章其实非常多了;我之所以要记录,是因为一个特别的问题;过年了,俺是回不去了,预祝大家过年好。 首先是怎么自动启动,有好几种,我说...
  • xugangwen
  • xugangwen
  • 2015年02月14日 07:26
  • 9851

Windows Tomcat自动启动

使用服务的方式来实现Tomcat的自动启动! 首先找到Tomcat的bin目录,我的是:E:\hk\tomcat\apache-tomcat-7.0.68\bin 使用cmd进入bin目录后,执行...
  • hzw2312
  • hzw2312
  • 2016年12月15日 11:09
  • 869
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Linux下Tomcat开机自动启动
举报原因:
原因补充:

(最多只允许输入30个字)