热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Tomcatstart/stopscript

http://blog.valotas.com/2011/05/tomcat-initd-script.html http://blog.botha.us/


http://blog.valotas.com/2011/05/tomcat-initd-script.html


http://blog.botha.us/sarel/?p=101


#!/bin/

bash
#
# tomcat7 This shell script takes care of starting and stopping Tomcat
#
# chkconfig:

-

80


20



#
### BEGIN INIT INFO
# Provides: tomcat7
# Required

-

Start: $network $syslog
# Required

-

Stop: $network $syslog
# Default

-

Start:
# Default

-

Stop:
# Description: Release implementation


for

Servlet

2.5

and JSP

2.1



# Short

-

Description: start and stop tomcat
### END INIT INFO
## Source


function


library.
#.

/etc/rc.d/init.d/

functions
export JAVA_HOME

=/usr/java/

default
export JAVA_OPTS

=

"


-Dfile.encoding=UTF-8 \

-Dcatalina.logbase=/var/log/

tomcat7 \

-Dnet.sf.ehcache.skipUpdateCheck=

true


\

-XX:+

DoEscapeAnalysis \

-XX:+

UseConcMarkSweepGC \

-XX:+

CMSClassUnloadingEnabled \

-XX:+

UseParNewGC \

-XX:MaxPermSize=

128m \

-Xms512m -Xmx512m

"

export PATH=$JAVA_HOME/

bin:$PATH
TOMCAT_HOME

=/usr/share/

tomcat7
SHUTDOWN_WAIT

=

20



tomcat_pid() {


echo

`

ps

aux |

grep

org.apache.catalina.startup.Bootstrap |

grep

-v

grep

|

awk


'


{ print $2 }


'


`
}
start() {
pid

=

$(tomcat_pid)


if

[ -n

"


$pid


"


]


then


echo


"


Tomcat is already running (pid: $pid)


"


else



# Start tomcat


echo


"


Starting tomcat


"



ulimit

-n

100000



umask


007

/bin/

su

-p -s /bin/

sh

tomcat $TOMCAT_HOME/bin/startup.

sh


fi



return


0



}
stop() {
pid

=

$(tomcat_pid)


if

[ -n

"


$pid


"


]


then


echo


"


Stoping Tomcat


"

/bin/

su

-p -s /bin/

sh

tomcat $TOMCAT_HOME/bin/shutdown.

sh



let kwait

=

$SHUTDOWN_WAIT
count

=

0


;


until

[ `

ps

-p $pid |

grep

-c $pid` =

'


0


'

] || [ $count -

gt $kwait ]


do


echo

-n -e

"


\nwaiting for processes to exit


"


;


sleep


1



let count

=$count+

1


;


done


if

[ $count -gt $kwait ];

then


echo

-n -e

"


\nkilling processes which didn't stop after $SHUTDOWN_WAIT seconds


"


kill

-

9


$pid


fi


else


echo


"


Tomcat is not running


"


fi



return


0



}


case

$

1


in



start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
pid

=

$(tomcat_pid)


if

[ -n

"


$pid


"


]


then


echo


"


Tomcat is running with pid: $pid


"


else


echo


"


Tomcat is not running


"


fi



;;


esac



exit


0




#!/bin/

bash
#
# tomcat This shell script takes care of starting and stopping Tomcat
# It also handles killing Tomcat


in


case


it doesn’t stop gracefully
# It uses a PID


file


to determine the process ID so it should work with multiple Tomcat instances on one server
#
# chkconfig:

-

80


20



#
### BEGIN INIT INFO
# Provides: tomcat
# Required

-

Start: $network $syslog
# Required

-

Stop: $network $syslog
# Default

-Start:

2


3


4


5



# Default

-Stop:

0


1


6



# Description: Tomcat service
# Short

-

Description: start and stop tomcat
### END INIT INFO
## Source


function


library.
#.

/etc/rc.d/init.d/

functions
# Begin configuration section
export JAVA_HOME

=/opt/jdk1.

6.0



# These options are used when Tomcat is started
export CATALINA_OPTS

=”-Xmx512m -XX:-

UseGCOverheadLimit \

-Dcom.sun.management.jmxremote=

true


\

-Dcom.sun.management.jmxremote.port=

511


\

-Dcom.sun.management.jmxremote.authenticate=

false


\

-Dcom.sun.management.jmxremote.ssl=

false



export LD_LIBRARY_PATH

=/usr/local/apr/

lib
# Set this to the path where this Tomcat is installed
TOMCAT_HOME

=/opt/

tomcat
# Number of seconds to


wait


after nicely requesting stop
SHUTDOWN_WAIT

=

10



# This should be a different


file


for


each tomcat
CATALINA_PID

=/var/run/

tomcat.pid
RUNASUSER

=

root
# End configuration section
export PATH

=$JAVA_HOME/

bin:$PATH
export CATALINA_PID
start() {
pid

=`

cat

$CATALINA_PID

2

>/dev/

null


`


if

[ -n

"


$pid


"


]


then


echo


“Tomcat is already running (pid: $pid)”


else



# Start tomcat


echo


“Starting tomcat”


touch


$CATALINA_PID


chown


$RUNASUSER $CATALINA_PID

/bin/

su

-p -s /bin/

sh

$RUNASUSER $TOMCAT_HOME/bin/catalina.

sh


start


fi



return


0



}
stop() {
pid

=`

cat

$CATALINA_PID

2

>/dev/

null


`


if

[ -n

"


$pid


"


]


then

/bin/

su

-p -s /bin/

sh

$RUNASUSER $TOMCAT_HOME/bin/catalina.

sh


stop


echo

-

n “Stopping Tomcat”
let kwait

=

$SHUTDOWN_WAIT
count

=

0


;


until

[ `

ps

-p $pid |

grep

-c $pid` =

'


0


'

] || [ $count -

gt $kwait ]


do


echo

-

n “.”;


sleep


1



let count

=$count+

1


;


done


echo


“”


if

[ $count -gt $kwait ];

then


echo


“process is still running after $SHUTDOWN_WAIT seconds, killing process”


kill


$pid


sleep


3



#


if

it’s still running use

kill

-

9


if

[ `

ps

-p $pid |

grep

-c $pid` -gt

'


0


'

];

then


echo

“process is still running, using

kill

-

9





kill

-

9


$pid


sleep


3


fi


fi


if

[ `

ps

-p $pid |

grep

-c $pid` -gt

'


0


'

];

then


echo


“process is still running, I give up”


else



# success, delete PID


file


rm


$CATALINA_PID


fi


else


echo


“Tomcat is not running”


fi



return


0



}


case

$

1


in



start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
pid

=

$(tomcat_pid)


if

[ -n

"


$pid


"


]


then


echo


“Tomcat is running with pid: $pid”


else


echo


“Tomcat is not running”


fi



;;


esac



exit


0


 

 

 


Tomcat start/stop script




推荐阅读
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • 【shell】网络处理:判断IP是否在网段、两个ip是否同网段、IP地址范围、网段包含关系
    本文介绍了使用shell脚本判断IP是否在同一网段、判断IP地址是否在某个范围内、计算IP地址范围、判断网段之间的包含关系的方法和原理。通过对IP和掩码进行与计算,可以判断两个IP是否在同一网段。同时,还提供了一段用于验证IP地址的正则表达式和判断特殊IP地址的方法。 ... [详细]
  • 本文总结了Java中日期格式化的常用方法,并给出了示例代码。通过使用SimpleDateFormat类和jstl fmt标签库,可以实现日期的格式化和显示。在页面中添加相应的标签库引用后,可以使用不同的日期格式化样式来显示当前年份和月份。该文提供了详细的代码示例和说明。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文介绍了作者在开发过程中遇到的问题,即播放框架内容安全策略设置不起作用的错误。作者通过使用编译时依赖注入的方式解决了这个问题,并分享了解决方案。文章详细描述了问题的出现情况、错误输出内容以及解决方案的具体步骤。如果你也遇到了类似的问题,本文可能对你有一定的参考价值。 ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
author-avatar
手机用户2502940777
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有