腳本啟動tomcat
⑴ linux環境下如何通過shell腳本監測tomcat是否關閉並自動啟動
pgrep tomcat
或
pidof tomcat
⑵ 一個tomcat啟動腳本,手工執行ok,但是放入定時任務就是不執行,請問為什麼
寫一個重啟tomcat的shell腳本,然後用crontab定時執行這個腳本即可。
⑶ 如何配置Tomcat伺服器環境
一、安裝JDK和Tomcat
1,安裝JDK:直接運行jdk-7-windows-i586.exe可執行程序,默認安裝即可。
備註:路徑可以其他盤符,不建議路徑包含中文名及特殊符號。
2、安裝Tomcat:直接解壓縮下載文件「apache-tomcat-7.0.33-windows-x86.zip」到C盤下。安裝路徑建議修改為:c: omcat。
備註:如下載的是可執行文件,雙擊運行,默認安裝即可。
二、配置JDK環境變數(在步驟查看如何配置環境變數)
1,新建變數名:java_HOME,變數值:C:Program FilesJavajdk1.7.0
2,打開PATH,添加變數值:%JAVA_HOME%in;%JAVA_HOME%jrein
3,新建變數名:CLASSPATH,變數值:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar
備註:
1,.表示當前路徑,%JAVA_HOME%就是引用前面指定的JAVA_HOME;
2,JAVA_HOME指明JDK安裝路徑,此路徑下包括lib,bin,jre等文件夾,tomcat,eclipse等的運行都需要依靠此變數。
3,PATH使得系統可以在任何路徑下識別java命令。
4,CLASSPATH為java載入類(class or lib)路徑,只有類在classpath中,java命令才能識別。
三、測試JDK
在CMD命令下輸入javac,java,javadoc命令:出現圖示界面,表示安裝成功。
1,JAVA_HOME中的路徑不能用分號結尾,如C:Program FilesJavajdk1.7.0。
2,CATALINA_BASE,CATALINA_HOME,TOMCAT_HOME中的路徑不能以「」結尾。
3,JAVA_HOME的路徑一定不要寫成了JRE的路徑。
4,在環境變數中修改添加變數時,一定要注意分號、空格,是否有多餘的字母。作者就是因為path路徑中多了一個字母,怎麼都配置不成功。如果配置不成功,一定要反復檢查。
以上錯誤,非常容易出現錯誤:CATALINA_HOME或是JAVA_HOME沒有配置好。如錯誤提示「The CATALINA_HOME environment variable is not defined correctly」
一、靜態部署
1、直接將web項目文件件拷貝到webapps 目錄中
Tomcat的Webapps目錄是Tomcat默認的應用目錄,當伺服器啟動時,會載入所有這個目錄下的應用。所以可以將JSP程序打包成一個war包放在目錄下,伺服器會自動解開這個war包,並在這個目錄下生成一個同名的文件夾。一個war包就是有特性格式的jar包,它是將一個web程序的所有內容進行壓縮得到。具體如何打包,可以使用許多開發工具的IDE環境,如Eclipse等。也可以用cmd命令:jar -cvf mywar.war myweb
webapps這個默認的應用目錄也是可以改變。打開Tomcat的conf目錄下的server.xml文件,找到下面內容:<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
將appBase修改即可。
2、在server.xml中指定
在Tomcat的配置文件中,一個Web應用就是一個特定的Context,可以通過在server.xml中新建Context里部署一個JSP應用程序。打開server.xml文件,在Host標簽內建一個Context,內容如下。在tomcat中的conf目錄中,在server.xml中的,<host/>節點中添加:
<Contextpath="/hello"docBase="D: workspacehelloWebRoot"debug="0"privileged="true">
< /Context>或者
<Contextpath="/myapp"reloadable="true"docBase="D:myapp"workDir="D:myappwork"/>
或者
<Contextpath="/sms4"docBase="D:workspacesms4WebRoot"/>
說明:path是虛擬路徑;
docBase是應用程序的物理路徑;
workDir是這個應用的工作目錄,存放運行時生成的與這個應用相關的文件;
debug則是設定debug level, 0表示提供最少的信息,9表示提供最多的信息
privileged設置為true的時候,才允許Tomcat的Web應用使用容器內的Servlet
reloadable如果為true,則tomcat會自動檢測應用程序的/WEB-INF/lib和/WEB-INF/classes目錄的變化,自動裝載新的應用程序,可以在不重起tomcat的情況下改變應用程序,實現熱部署
antiResourceLocking和antiJARLocking 熱部署是需要配置的參數,默認false避免更新了某個webapp,有時候Tomcat並不能把舊的webapp完全刪除,通常會留下WEB-INF/lib下的某個jar包,必須關閉Tomcat才能刪除,這就導致自動部署失敗。設置為true,Tomcat在運行對應的webapp時,會把相應的源文件和jar文件復制到一個臨時目錄里。
3、創建一個Context文件
在conf目錄中,新建Catalina\localhost目錄,在該目錄中新建一個xml文件,名字不可以隨意取,要和path後的那個名字一致,按照下邊這個path的配置,xml的名字應該就應該是hello(hello.xml),該xml文件的內容為:<Context path="/hello" docBase="E:workspacehelloWebRoot" debug="0" privileged="true"></Context>
tomcat自帶例子如下:
<Context docBase="${catalina.home}/server/webapps/host-manager"
privileged="true" antiResourceLocking="false" antiJARLocking="false">
</Context>
這個例子是tomcat自帶的,編輯的內容實際上和第二種方式是一樣的,其中這xml文件名字就是訪問路徑,這樣可以隱藏應用的真實名字。
4、注意:
刪除一個Web應用同時也要刪除webapps下相應的文件夾和server.xml中相應的Context,還要將Tomcat的confcatalinalocalhost目錄下相應的xml文件刪除,否則Tomcat仍會去配置並載入。。。
二 動態部署
登陸tomcat管理控制台:http://localhost:8080/,輸入用戶名和密碼後便可管理應用並動態發布。
在Context Path(option):中輸入/yourwebname,這代表你的應用的訪問地址。
XML Configration file URL中要指定一個xml文件,比如我們在F:下建立一個hmcx.xml文件,內容如下:<Context reloadable="false" />其中docBase不用寫了,因為在下一個文本框中填入。或者更簡單點,這個文本框什麼都不填,在WAR or Directory URL:中鍵入F:hmcx即可,然後點擊Deploy按鈕,上面就可以看到了web應用程序,名字就Context Path(option):中的名字。
如果部署.war文件還有更加簡單的方式,下面還有個Select WAR file uploae點擊瀏覽選擇.war文件,然後點擊Deploy也可以。
注意事項
項目部署方式
⑷ 腳本應放在tomcat哪裡
1.首先我們就來創建一個普通用戶。
groupadd tomcat #加組
useradd -g tomcat -s /usr/sbin/nologin tomcat #向組加用戶
usermod -L tomcat #鎖定密碼,使密碼無效
passwd tomcat # 設置密碼
通過這四步,我們就把普通用戶創建好了,在創建用戶時,我們是先創建的組,組創建完成後創建用戶並加入該組。
用戶創建完成後,就開始給用戶設置許可權
chown -R tomcat:tomcat /data #分配許可權給用戶
這就是給拆頃tomcat這個用戶設置了可以操旅首陸作data目錄及其子目錄下的許可權,-R就代表該目錄及其級聯子目錄。
[root@localhost data]# ls -l
total 0
drwxr-xr-x. 4 tomcat tomcat 79 May 20 08:03 tomcat
[root@localhost data]#
此時我們通過ls -l 命令就可以看到data目錄已經屬於tomcat用戶芹賣,且擁有查看,寫入,執行許可權
2.完成了用戶創建後,我們就要開始完成tomcat啟動腳本。
如代碼所示:
#!/bin/bash
tomcat_home=/data/tomcat/tomcat-8484
SHUTDOWN=$tomcat_home/bin/shutdown.sh
STARTTOMCAT=$tomcat_home/bin/startup.sh
case $1 in
start)
echo "啟動$tomcat_home"
$STARTTOMCAT
cd /data/tomcat/tomcat-8484/logs
tail -f catalina.out
;;
stop)
echo "關閉$tomcat_home"
#$SHUTDOWN
netstat -anp | grep 8484| grep -v grep | awk '{print $7}' | sed -e 's//java//g' | sed -e 's/^/kill -9 /g' | sh
#pidlist=`ps -ef |grep tomcat |grep -v "grep"|awk '{print $2}'`
#kill -9 $pidlist
#刪除日誌文件,如果你不先刪除可以不要下面一行
#rm $tomcat_home/logs/* -rf
#刪除tomcat的臨時目錄
#rm $tomcat_home/work/* -rf
;;
restart)
echo "關閉$tomcat_home"
$SHUTDOWN
#pidlist=`ps -ef |grep tomcat |grep -v "grep"|awk '{print $2}'`
#pidlist=`netstat -anp |grep 8484 |grep -v "grep"|awk '{print $2}'`
#netstat -anp | grep 8484| grep -v grep | awk '{print $7}' | sed -e 's//java//g' | sed -e 's/^/kill -9 /g' | sh
#kill -9 $pidlist
sleep 5
echo "啟動$tomcat_home"
$STARTTOMCAT
#看啟動日誌
#tail -f $tomcat_home/logs/catalina.out
;;
logs)
cd /data/tomcat/tomcat-8484/logs
tail -f catalina.out
;;
esac
上面代碼就是tomcat啟動腳本,首先我們要創建一個文本文件,然後將後綴名變成.sh,這里我是用埠號為8484的tomcat作為例子,從腳本文件中可以看到,總共只需對自己tomcat位置和日誌位置進行自定義改動後就可以使用,總共有四個命令,start,stop,restart,logs。
腳本文件創建好後,只需將它放入你的伺服器中,位置可以自己隨意選擇,我這里就把它放在了tomcat下bin目錄中。
腳本文件放入伺服器後其實還不能使用,會有兩個問題待解決,一個是格式問題,一個是許可權問題。因為我們是文本文件創建的,其格式是文本格式,我們要改成unix格式,所以要進行如下設置
sed -i "s/
//" tomcat-8484.sh #設置腳本文件為unix格式
完成了格式設置後就要為該腳本文件設置許可權,因為linux默認文件的許可權是drwxr-xr-x,即所有運行許可權賦予文件所有者也就是系統管理員(當前我是用系統管理員登錄),把讀和運行的許可權賦予群組用戶,把讀的許可權賦予其他用戶,
⑸ linux 中tomcat啟動腳本,請解釋。
#!/bin/sh ---- 說明本文件是腳本
darwin=false
case "`uname`" in
CYGWIN*) cygwin=true;;
OS400*) os400=true;;
Darwin*) darwin=true;;
esac
----------------------------這幾行,判斷操作系統類別
while [ -h "$PRG" ] ; do ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`/"$link"
fi
done
-------------------------------------------判斷本腳本是否軟鏈接
if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then
echo "Cannot find $PRGDIR/$EXECUTABLE"
echo "The file is absent or does not have execute permission"
echo "This file is needed to run this program"
exit 1
fi
------------------------------判斷本腳本是否能「執行」,如果不能,退出、提示
exec "$PRGDIR"/"$EXECUTABLE" start "$@" ------運行tomcat,後面的 $@是所有命令行參數
⑹ 命令行啟動tomcat,怎麼配置
需要進行如下配置:
1、新建文件夾,依次放入jre,tomcat與其他所需文件,其中tomcat中需要放入部署的war。
(6)腳本啟動tomcat擴展閱讀:
tomcat的啟動配置小結
tomcat的啟動腳本在tomcat的bin目錄下,啟動腳本start有兩個,分別時startup.bat和startup.sh兩個,在windows環境下使用startup.bat啟動tomcat,在linux下使用startup.sh啟動tomcat,
同理關閉的腳本也有兩個shutdown.bat和shutdown.sh兩個,分別是在windows下關閉tomcat和linux下關閉tomcat使用。
總結如下:
startup.bat windows下啟動
shutdown.bat windows下關閉
startup.sh linux下啟動
shutdown.sh linux下關閉
另外還有一個tomcat.exe,這個是在windows下的可執行程序,需要在伺服器上安裝對應的服務後可以通過tomcat.exe啟動tomcat。