该脚本改自csdn上的一个shell,忘记出处了,只记得它能够简单的通过<code>service tomcat [stop|start|restart]</code>来方便的管理linux服务器上的tomcat,这可以满足大部分人的需求,然而并不适合我所管理的centos上的tomcat应用:通过端口区分的3台tomcat集群。如果每一次管理tomcat或查看日志,都<code>cd /apps/test/tomcat0/log/</code>然后切换到另外一个<code>cd ../../</code>或<code>cd /apps/test/tomcat1/log/</code>,麻烦至极。因此“懒人”创造了这个脚本<code>tomcat</code>:
使用说明:
1. 使用前设定好<code>basedir</code>(多tomcat所在路径),各tomcat命名如<code>tomcat0</code>、<code>tomcat1</code>...
2. 脚本名字为<code>tomcat</code>,放到<code>/etc/init.d/</code>下,并基于可执行权限<code>chmod +x /etc/init.d/tomcat</code>
3. 执行用户不允许用<code>root</code>,特别是在线上环境
4. 已处理其他错误参数输入,可用于正式环境
5. 你也可以修改<code>tcname</code>来适应管理一个tomcat服务的情形
6. 使用,以下针对<code>tomcat0</code>(<code>/apps/test/tomcat0</code>)
to-do
加入<code>service tomcat 0 clean</code>命令来清除<code>work</code>和<code>tmp</code>目录,正在运行的不允许清除。
这个脚本最近(2014/11/13)在使用过程中发现一个新的问题,因为服务器上tomcat一直开启着监控端口7091,所以在<code>service tomcat 1 start</code>失败以后,7091端口就被占用了,但使用<code>service tomcat 1 status</code>状态时<code>stopped</code>,其实还是有这个失败的tomcat进程,但用<code>service tomcat 1 kill</code>会失败。脚本里在考虑这个功能的话就有点臃肿了,还是老实结合手动管理吧。