完美解決Linux服務器tomcat開機自啟動問題

經過多次測試終于徹底解決tomcat開機自啟動的問題了

PID3=`ps aux | grep /home/server/shichuan/ | grep java | awk '{print $2}'`

if [ -n "$PID3" ]; then
這個判斷pid的方式還是可能出現啟動失敗的情況
# tail -n 1 /home/server/shichuan/logs/catalina.out |grep 'INFO: Server startup in'
INFO: Server startup in 37417 ms
這個才是真正的啟動成功,由于是用autostart的方式會先執行停止后啟動,一定不會重新最后一行是之前啟動成功留下來的
啟動成功需要40秒左右,應該先sleep 足夠長的時間再檢測,否則會出現啟動多個tomcat進程的問題
一次性殺掉多個tomcat進程命令:
ps -ef|grep -v grep|grep /home/server/shichuan/ | grep java |awk '{print "kill -9 "$2}'|sh

$TOMCAT_PATH/startup.sh

sleep 60

for((i=1;i<10;i++))
do
LASTINFO=`tail -n 1 /home/server/shichuan/logs/catalina.out |grep 'INFO: Server startup in'`
if [ -n "$LASTINFO" ]; then
break
else
ps -ef|grep -v grep|grep /home/server/shichuan/ | grep java |awk '{print "kill -9 "$2}'|sh
sleep 1
$TOMCAT_PATH/startup.sh
sleep 60
fi
done

設置權限:chmod 777 autostart.sh

在/etc/rc.d/rc.local中加入腳本:
vim /etc/rc.local
/home/server/shichuan/bin/autostart.sh
保存并退出,下次重啟會生效。

============================

ps -ef|grep -v grep|grep /home/server/shichuan/ | grep java
ps aux | grep /home/server/shichuan/ | grep java | awk '{print $2}'
ps -ef|grep -v grep|grep /home/server/shichuan/ | grep java |awk '{print "kill -9 "$2}'
ps -ef|grep -v grep|grep /home/server/shichuan/ | grep java |awk '{print "kill -9 "$2}'|sh


ps -ef | 獲取當前服務器所有進程
grep -v grep 相當于grep自己吧自己過濾掉,就是不顯示grep
grep /home/server/shichuan/ | grep java 過濾出包含這些內容,即過濾出對應的pid
awk 截取 $2 第二個域的pid號。通過調用外部命令kill 來干掉
|sh 把前面print輸出的內容作為命令執行

===========================

其他相關命令:

service nginx restart
ls -lh /home/server/shichuan/bin/autostart.sh
cd /home/server/shichuan/bin/

vim /home/server/shichuan/bin/autostart.sh

tail -f /home/server/shichuan/logs/catalina.out

===========================

?下面是autostart.sh的內容:

復制代碼

#!/bin/sh
TOMCAT_PATH=/home/server/shichuan/binps -ef|grep -v grep|grep /home/server/shichuan/ | grep java |awk '{print "kill -9 "$2}'|sh
sleep 10$TOMCAT_PATH/startup.shsleep 60for((i=1;i<10;i++))
doLASTINFO=`tail -n 1 /home/server/shichuan/logs/catalina.out |grep 'INFO: Server startup in'`if [ -n "$LASTINFO" ]; thenbreakelseps -ef|grep -v grep|grep /home/server/shichuan/ | grep java |awk '{print "kill -9 "$2}'|shsleep 1$TOMCAT_PATH/startup.shsleep 60fi
done

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/89669.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/89669.shtml
英文地址,請注明出處:http://en.pswp.cn/web/89669.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

kotlin部分常用特性總結

<h3>Kotlin中類和對象初始化</h3><ul> <li>添加open關鍵字代表可以被繼承</li> <li>Any 是所有類的父類,類似Object,包含 equals() hashCode() toString()方法</li> <li>constructor 關鍵字代表構造函數, constructor關鍵字可…

PHP 就業核心技能速查手冊

# PHP 就業核心技能速查手冊 > 高效聚焦市場所需&#xff0c;快速提升競爭力 --- ## 一、語法基礎&#xff08;必會&#xff01;&#xff09; php // 1. 變量與數據類型 $price 19.99; // 浮點型 $isStock true; // 布爾型 // 2. 流程控制 foreach ($…

從混沌到秩序:數據科學的熱力學第二定律破局——線性回歸的熵減模型 × 最小二乘的能量最小化 × 梯度下降的負反饋控制系統,用物理定律重構智能算法的統一場論

目錄 一、機器學習是什么&#xff1f; 1.1 什么是機器學習&#xff1f; 1.2 機器學習的三大類型 二、線性回歸是什么&#xff1f; 2.1 通俗理解 2.2 數學表達 三、最小二乘法&#xff08;Least Squares Method&#xff09; 3.1 什么是損失函數&#xff1f; 3.2 什么是最小…

BI 數據可視化平臺建設(3)—首頁性能提升實踐

作者&#xff1a; vivo 互聯網大數據團隊- Wang Lei 本文是vivo互聯網大數據團隊《BI 數據可視化平臺建設》系列文章第3篇。 隨著越來越多代碼的堆積&#xff0c;平臺的運行加載性能也在逐步下降&#xff0c;在不同程度上極大地影響了用戶體驗&#xff0c;從而導致用戶流失。本…

基于Python的畢業設計選題管理系統設計與實現

基于Python的畢業設計選題管理系統設計與實現摘要本論文詳細闡述了一個基于Python的畢業設計選題管理系統的設計與實現過程。該系統采用了Python的Tkinter庫構建圖形用戶界面&#xff0c;使用SQLite數據庫存儲數據&#xff0c;實現了高校畢業設計選題過程中的教師出題、學生選題…

如何在HTML5頁面中嵌入視頻

在HTML5中嵌入視頻主要使用<video>標簽&#xff0c;這是一種簡單且標準的方式。以下是詳細步驟和示例&#xff1a; 基礎實現 <!DOCTYPE html> <html> <head><title>視頻嵌入示例</title> </head> <body><!-- 基礎視頻播放器…

java操作Excel兩種方式EasyExcel 和POI

一、POI1.引入依賴<!-- 03 xls--> <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.9</version> </dependency><!-- 07 xlsx --> <dependency><groupId>org.a…

Openlayers 面試題及答案180道(141-160)

《前后端面試題》專欄集合了前后端各個知識模塊的面試題,包括html,javascript,css,vue,react,java,Openlayers,leaflet,cesium,mapboxGL,threejs,nodejs,mangoDB,MySQL,Linux… 。 前后端面試題-專欄總目錄 文章目錄 一、本文面試題目錄 141. 如何在生產環境中優…

LangChain面試內容整理-知識點24:實戰案例:智能助手 Agent 構建

本案例講述如何用LangChain構建一個結合多個工具的智能助手 Agent。智能助手需要理解用戶復雜請求,通過調用不同工具(如搜索、計算、查數據庫等)執行多步推理,再給出答案。LangChain的Agent框架非常適合這種場景。 構建步驟: 確定需求和選擇Agent類型:假設我們要一個能上…

【MATLAB例程】Taylor算法用于TOA(到達時間)的三維標簽位置解算,可自適應基站數量。附下載鏈接

本文給出自適應錨點&#xff08;基站&#xff09;的Taylor算法解算TOA&#xff08;到達時間&#xff09;的MATLAB代碼。參考論文&#xff1a;《基于Taylor-Chan算法的改進UWB室內三維定位方法》中的Taylor算法來解算TOA的復現程序&#xff08;MATLAB&#xff09;。 文章目錄運行…

Eclipse代碼折疊增強插件的安裝與使用

本文還有配套的精品資源&#xff0c;點擊獲取 簡介&#xff1a;Eclipse作為Java開發者的IDE&#xff0c;提供包括代碼折疊在內的多種功能&#xff0c;便于管理與閱讀代碼。本文介紹的“com.cb.eclipse.folding_1.0.6.jar”插件能夠進一步增強Eclipse的代碼折疊能力。安裝后&…

Python day18

浙大疏錦行 python day 18. 內容&#xff1a; 昨天學習了聚類算法的一些基本內容&#xff0c;今天繼續學習相關知識分析簇的特征和相關含義&#xff08;使用可視化來進行分析&#xff0c;也可以使用ai&#xff09; 代碼&#xff1a; shap.initjs() # 初始化 SHAP 解釋器 ex…

WPS文檔中心及文檔中臺遠程命令執行漏洞

【嚴重】WPS文檔中心及文檔中臺遠程命令執行漏洞 漏洞描述 WPS文檔中心是面向個人和企業的云端文檔存儲與管理平臺&#xff0c;WPS文檔中臺是為企業提供的集成化文檔協同與流程管理解決方案&#xff0c;強調API對接與業務系統整合。 在2024年5月之前通過docker私有化部署的版…

WPF 加載和顯示 GIF 圖片的完整指南

WPF 加載和顯示 GIF 圖片的完整指南 在 WPF 中加載和顯示 GIF 圖片需要一些特殊處理&#xff0c;因為 WPF 的 Image 控件默認不支持動畫 GIF。 解決方案一&#xff1a;使用 WpfAnimatedGif 庫&#xff08;推薦&#xff09; 這是最簡單且功能最完整的方法。 實現步驟&#xff1a…

Node.js GET/POST請求詳解

Node.js GET/POST請求詳解 引言 Node.js作為一種基于Chrome V8引擎的JavaScript運行環境&#xff0c;以其高性能、非阻塞I/O模型和輕量級等特點&#xff0c;在服務器端開發中得到了廣泛應用。本文將詳細介紹Node.js中GET和POST請求的處理方法&#xff0c;幫助開發者更好地理解和…

C++string類(2)

3.string類對象的訪問及遍歷操作函數名稱功能說明operator[] &#xff08;重 點&#xff09;返回pos位置的字符&#xff0c;const string類對象調用beginendbegin獲取第一個字符的迭代器 end獲取最后一個字符下一個位置的迭代器rbeginrendrbegin獲取最后一個字符的迭代器 ren…

SQLShift:一款異構數據庫存儲過程遷移工具

SQLShift 是一款專注于解決企業級數據庫遷移難題的智能 SQL 方言轉換平臺&#xff0c;尤其擅長異構數據庫存儲過程的自動化遷移。 SQLShift 工具深度融合了 AI 與 SQL 語法專家模型&#xff0c;可以大幅提升遷移效率并降低人工適配風險。 功能特性 多源多目標&#xff1a;目前…

學習設計模式《十八》——備忘錄模式

一、基礎概念 備忘錄模式的本質是【保存和恢復內部狀態】。 備忘錄模式的思考序號備忘錄模式的思考說明1保存是手段&#xff0c;恢復才是目的標準的備忘錄模式保存數據的手段是通過內存緩存&#xff1b;廣義的備忘錄模式實現的時候&#xff0c;可以采用離線存儲的方式&#xff…

HOT100——排序篇Leetcode215. 數組中的第K個最大元素

文章目錄題目&#xff1a;Leetcode215. 數組中的第K個最大元素原題鏈接思路1代碼1思路2代碼2題目&#xff1a;Leetcode215. 數組中的第K個最大元素 原題鏈接 數組中的第K個最大元素 思路1 排序 排序后返回倒數第k個數 代碼1 思路2 使用priority_queue&#xff0c;大根堆&#x…

三維重建一: 相機幾何

參考這位大佬&#xff1a;https://zhuanlan.zhihu.com/p/458000359 一. 基本的投影模型 正如上面所說&#xff0c;相機是一個將三維物體投影為二維圖像的設備。 對于小孔相機&#xff0c;或者薄透鏡相機來說&#xff0c;基礎投影的數學模型可以表達為 我們把這個過程表達在笛…