看是否已經有tomcat在運行了
[root@gft tomcat-6.0-saltCtredit]# ps -ef |grep tomcat //發現共有3個進程在運行tomcat,其中一個1850進程號是其它的項目,不用管它。 //而2254和4130端口,運行的都是我們出錯誤的項目。需要殺掉這兩個進程,然后重新啟動tomcat。
在Linux 中,我們經常使用“ps -ef|grep tomcat” 查看進程,如下圖是我操作的服務器上使用該命令后查看的結果:
可以看到,除了3個紫色的tomcat外,還會有一個該命令的進程。
如果想排除掉那個紅色框的當前進程,可以在原來命令后面增加一段參數過濾,如下:
ps -ef|grep tomcat|grep -v grep
只所以這樣做,是因為我個人有個需求:寫一個sh腳本放在tomcat/bin目錄下,kill掉當前tomcat的進程。
編寫 kill.sh 腳本,並將該腳本放在 tomcat/bin 目錄下,內容如下:
#!/bin/sh TOM_HOME=$(cd `dirname $0`;cd ..;pwd) ps -ef|grep $TOM_HOME|grep -v grep|grep -v kill if [ $? -eq 0 ];then kill -9 `ps -ef|grep $TOM_HOME|grep -v grep|grep -v kill|awk '{print $2}'` else echo $TOM_HOME' No Found Process' fi
使用命令 chmod +x kill.sh 為腳本授可執行權限。
徹底殺死運行tomcat的進程號
[root@gft tomcat-6.0-saltCtredit]# kill -9 2254 [root@gft tomcat-6.0-saltCtredit]# kill -9 4130
再次查看運行tomcat的進程,發現多余的兩個進程成功殺死。
[root@gft tomcat-6.0-saltCtredit]# ps -ef|grep tomcat
重新啟動tomcat,成功解決問題。
[root@gft tomcat-6.0-saltCtredit]# bin/startup.sh
附:
啟動tomcat,在tomcat的根目錄下執行命令,如:/sda/home/tomcat-6.0-saltCtredit
bin/startup.sh
停止tomcat
bin/shutdown.sh
查看tomcat的控制台輸出
tail -f logs/catalina.out
解決問題的詳細控制台信息:
Last login: Wed Oct 19 09:42:42 2016 from 211.88.72.75 [root@gft ~]# cd /sda/home/tomcat-6.0-saltCtredit [root@gft tomcat-6.0-saltCtredit]# [root@gft tomcat-6.0-saltCtredit]# ps -ef |grep tomcat root 1850 1 0 Oct18 ? 00:03:03 /sda/java/jdk1.6.0_07/jre/bin/java -Djava.util.logging.config.file=/sda/home/tomcat-zbpt/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/sda/home/tomcat-zbpt/endorsed -classpath /sda/home/tomcat-zbpt/bin/bootstrap.jar -Dcatalina.base=/sda/home/tomcat-zbpt -Dcatalina.home=/sda/home/tomcat-zbpt -Djava.io.tmpdir=/sda/home/tomcat-zbpt/temp org.apache.catalina.startup.Bootstrap start root 2254 1 6 Oct18 ? 01:40:23 /sda/java/jdk1.6.0_07/jre/bin/java -Djava.util.logging.config.file=/sda/home/tomcat-6.0-saltCtredit/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/sda/home/tomcat-6.0-saltCtredit/endorsed -classpath /sda/home/tomcat-6.0-saltCtredit/bin/bootstrap.jar -Dcatalina.base=/sda/home/tomcat-6.0-saltCtredit -Dcatalina.home=/sda/home/tomcat-6.0-saltCtredit -Djava.io.tmpdir=/sda/home/tomcat-6.0-saltCtredit/temp org.apache.catalina.startup.Bootstrap start root 4130 1 20 09:44 ? 00:00:41 /sda/java/jdk1.6.0_07/jre/bin/java -Djava.util.logging.config.file=/sda/home/tomcat-6.0-saltCtredit/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/sda/home/tomcat-6.0-saltCtredit/endorsed -classpath /sda/home/tomcat-6.0-saltCtredit/bin/bootstrap.jar -Dcatalina.base=/sda/home/tomcat-6.0-saltCtredit -Dcatalina.home=/sda/home/tomcat-6.0-saltCtredit -Djava.io.tmpdir=/sda/home/tomcat-6.0-saltCtredit/temp org.apache.catalina.startup.Bootstrap start root 4196 4176 0 09:48 pts/0 00:00:00 grep tomcat [root@gft tomcat-6.0-saltCtredit]# kill -9 pid 2254 -bash: kill: pid: arguments must be process or job IDs [root@gft tomcat-6.0-saltCtredit]# kill -9 2254 -bash: kill: (2254) - No such process [root@gft tomcat-6.0-saltCtredit]# kill -9 4130 [root@gft tomcat-6.0-saltCtredit]# ps -ef|grep tomcat root 1850 1 0 Oct18 ? 00:03:03 /sda/java/jdk1.6.0_07/jre/bin/java -Djava.util.logging.config.file=/sda/home/tomcat-zbpt/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/sda/home/tomcat-zbpt/endorsed -classpath /sda/home/tomcat-zbpt/bin/bootstrap.jar -Dcatalina.base=/sda/home/tomcat-zbpt -Dcatalina.home=/sda/home/tomcat-zbpt -Djava.io.tmpdir=/sda/home/tomcat-zbpt/temp org.apache.catalina.startup.Bootstrap start root 4202 4176 0 09:51 pts/0 00:00:00 grep tomcat [root@gft tomcat-6.0-saltCtredit]# bin/startup.sh Using CATALINA_BASE: /sda/home/tomcat-6.0-saltCtredit Using CATALINA_HOME: /sda/home/tomcat-6.0-saltCtredit Using CATALINA_TMPDIR: /sda/home/tomcat-6.0-saltCtredit/temp Using JRE_HOME: /sda/java/jdk1.6.0_07/jre Using CLASSPATH: /sda/home/tomcat-6.0-saltCtredit/bin/bootstrap.jar [root@gft tomcat-6.0-saltCtredit]#
附:
我現在工作項目的部署方案
Last login: Thu Oct 20 09:40:56 2016 from 211.88.72.75 //跳轉到tomcat的bin路徑下 [root@gft ~]# cd /sda/home/tomcat-6.0-saltCtredit/bin //停掉tomcat [root@gft bin]# ./catalina.sh stop Using CATALINA_BASE: /sda/home/tomcat-6.0-saltCtredit Using CATALINA_HOME: /sda/home/tomcat-6.0-saltCtredit Using CATALINA_TMPDIR: /sda/home/tomcat-6.0-saltCtredit/temp Using JRE_HOME: /sda/java/jdk1.6.0_07/jre Using CLASSPATH: /sda/home/tomcat-6.0-saltCtredit/bin/bootstrap.jar //清掉tomcat緩存 [root@gft bin]# rm -rf /sda/home/tomcat-6.0-saltCtredit/work/Catalina //重新啟動tomcat [root@gft bin]# ./catalina.sh start Using CATALINA_BASE: /sda/home/tomcat-6.0-saltCtredit Using CATALINA_HOME: /sda/home/tomcat-6.0-saltCtredit Using CATALINA_TMPDIR: /sda/home/tomcat-6.0-saltCtredit/temp Using JRE_HOME: /sda/java/jdk1.6.0_07/jre Using CLASSPATH: /sda/home/tomcat-6.0-saltCtredit/bin/bootstrap.jar [root@gft bin]#