一:Linux下tomcat服務的啓動、關閉與錯誤跟蹤,使用PuTTy遠程鏈接到服務器之後,一般經過如下幾種方式啓動關閉tomcat服務:
切換到tomcat主目錄下的bin目錄(cd usr/local/tomcat/bin)
1,啓動tomcat服務
方式一:直接啓動 ./startup.sh
方式二:做爲服務啓動 nohup ./startup.sh &
方式三:控制檯動態輸出方式啓動 ./catalina.sh run 動態地顯示tomcat後臺的控制檯輸出信息,Ctrl+C後退出並關閉服務
解釋:
經過方式1、方式三啓動的tomcat有個弊端,當客戶端鏈接斷開的時候,tomcat服務也會當即中止,經過方式二能夠做爲linux服務一直運行
經過方式1、方式二方式啓動的tomcat,其日誌會寫到相應的日誌文件中,而不能動態地查看tomcat控制檯的輸出信息與錯誤狀況,經過方式三能夠以控制檯模式啓動tomcat服務,
直接看到程序運行時後臺的控制檯輸出信息,沒必要每次都要很麻煩的打開catalina.out日誌文件進行查看,這樣便於跟蹤查閱後臺輸出信息。tomcat控制檯信息包括log4j和System.out.println()等輸出的信息。java
2,關閉tomcat服務
./shutdown.shlinux
3,tomcat運行時jvm內存分配
⑴開發環境下在myeclipse中配置
-Xms256m -Xmx512m -XX:NewSize=64m -XX:MaxNewSize=128m -XX:PermSize=512m -XX:MaxPermSize=512m
⑵,線上環境(直接經過catalina或startup命令行的方式啓動)
①Linux下:catalina.sh
# OS specific support. $var _must_ be set to either true or false.在該註釋以後加下面一行
JAVA_OPTS="-server -Xms256m -Xmx512m -XX:NewSize=64m -XX:MaxNewSize=128m -XX:PermSize=512m -XX:MaxPermSize=512m"
②Windows下:cattalina.bat
rem Guess CATALINA_HOME if not defined 在該註釋以後加下面一行
set JAVA_OPTS=-Xms256m -Xmx512m -XX:NewSize=64m -XX:MaxNewSize=128m -XX:PermSize=512m -XX:MaxPermSize=512mapache
二:Linux 下的一些經常使用命令解釋:
1,pwd-->示當前的工做目錄(pwd:print working directory)
2,ls-->顯示當前目錄內容(list)
ls|more 分屏顯示("|"爲管道符,將前一個命令結果傳遞給後面的命令,more表示分屏)
ls /usr>test01/abc.txt 將指定目錄的內容追加到test01目錄下的abc.txt文本文檔中
ls -l 顯示長格式,簡寫ll,主要看文件的名,大小,權限等
ls -a 顯示隱藏文件
3,cd-->改變當前工做目錄
cd /usr-->轉到指定目錄
cd usr-->轉到指定目錄的子目錄
cd ..-->返回到上一級目錄
cd ~ -->返回到主目錄
4,clear--> 清屏
5,cat-->顯示文件內容
cat file|more分屏顯示文件內容(先顯示文件內容,再將結果內容傳給後一個命令分屏)
cat file|grep abc 顯示包含字符abc的文件內容(先顯示文件內容,再將結果內容傳給後一個命令搜索,grep具備搜索功能)
cat > catalina.out 清空日誌內容
6,touch-->建立新文件
7,mkdir-->建立新目錄
8,rm-->刪除文件或目錄
rm file.txt 刪除文件
rm -rf test01 刪除不爲空的目錄(參數r:遞歸recursion,f:強制force)
9,rmdir-->刪除空目錄
10,cp-->複製文件
cp src.txt dest.txt
11,mv-->移動文件
mv abc.txt def.txt 更名
mv test01 test02 改目錄名
mv test至關於mv t+(按Tab鍵),tab鍵有查找補充命令功能。
12,chmod-->改變權限模式
chmod +x catalina.sh 爲catalina.sh加可執行的權限(參數x:執行execute)。linux下的文件是否可執行取決於文件屬性,不看擴展名。
chmod a+r catalina.out 將文件 catalina.out 設爲全部人皆可讀取。(參數a:全部人all)
chmod ugo+r catalina.out 也是將文件 catalina.out 設爲全部人皆可讀取。(參數u:檔案擁有者user,g:group羣組,o:other其餘)
13,vi-->Linux下的一個簡單編輯器
vi .bash_profile 打開Linux的用戶級初始文件,:wq保存退出,:q!不保存退出
14,tail -->顯示文件尾部內容
tail -f ./catalina.out,#將文件最尾部內容顯示在屏幕上,並不斷刷新顯示,按ctrl+c或delete退出。
15,netstat或者lsof-->查看網絡端口與進程號
①netstat -anp|grep 8080 直接查看指定端口的進程pid
#結果爲
協議 本地地址 外部地址 狀態 PID
TCP 0.0.0.0:80 0.0.0.0:8080 LISTENING 5144/javabootstrap
②lsof -i:8080 直接查看指定端口的進程pid
#結果爲
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
java 5144 root 33u IPv6 127800 TCP *:8080 (LISTEN)
則5144爲8080這個端口的tomcat進程的pid,而後就能夠kill這個進程:kill -9 5144
對比Windows下netstat命令:netstat -ano|findstr 8080,taskkill -f -pid 5144(f:force強制)
16,ping -->查看網絡是連通
ping 127.16.8.66 查看當前機器與目錄機器是否能正常通訊(主要是看TCP/IP協議是否正常)
17,ipconfig 查看ip地址
ipconfig -all 能夠看到各個網絡適配器(本地網卡、無線網卡)的IP地址和MAC地址
18,ps -->查看程序活動進程
ps -ef |grep tomcat 查看是否已經有tomcat在運行了,若是有則將其進程殺死
#結果爲:
sun 1540 1 0 10:21 pts/1 00:00:06 /java/jdk/bin/java -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/java/tomcat/common/endorsed -classpath :/java/tomcat/bin/bootstrap.jar:/java/tomcat/bin/commons-logging-api.jar -Dcatalina.base=/java/tomcat -Dcatalina.home=/java/tomcat -Djava.io.tmpdir=/java/tomcat/temp org.apache.catalina.startup.Bootstrap start
則 1540 就爲進程號 pid = 1540,而後就能夠kill這個進程:kill -9 1540
對比Windows下tasklist命令:tasklist | findstr tomcat,taskkill -f -pid 5144
19,telnet-->測試遠程端口是否連通
telnet 10.4.200.114 1433
①端口通暢的狀況
Trying 10.4.200.114...
Connected to 10.4.200.114 (10.4.200.114).
Escape character is '^]'.
②端口不通的狀況
Trying 10.4.200.114...
若是能ping通,但端口不通,說明有可能被防火牆禁用了該端口,解決辦法:
linux下:查看防火牆:iptables –L
即時生效,重啓後失效 (開啓: service iptables start ,關閉: service iptables stop )
設置防火牆:setup (亂碼) 解決Putty工具亂碼:查看Linux系統當中使用的字符集echo $LANG $LANGUAGE,選擇菜修改設置(change settings)--->轉換(translation)-->選utf-8-->應用(apply)
win7下防火牆開放端口方法:控制面板--系統和安全---windows防火牆---高級設置--入站規則--新建規則-->添加1433端口。
20,df -->查看磁盤空間(diskfree)
df -lh /usr/local
21,du-->查看已使用空間(diskused)
du -h /usr
du -h --max-depth=1 查看文件夾大小
22,top-->Linux下經常使用的性能分析工具,可以實時顯示系統中各個進程的資源佔用情況,相似於Windows的任務管理器
top -s 查看內存使用狀況
top -s | grep java 查看java進程的信息windows
23,Linux壓縮與解壓縮
1,tar.gz這種格式是Linux下使用得最多的壓縮格式。它在壓縮時不會佔用太多CPU的,並且能夠獲得一個很是理想的壓縮率。
tar -zcvf archive_name.tar.gz directory_to_compress -->壓縮一個目錄
tar -zxvf archive_name.tar.gz -->解壓縮到當前目錄下
tar -zxvf archive_name.tar.gz -C /usr/temp/ -->解壓縮到指定目錄下
參數解釋:
-z -gzip 調用gzip對tar歸檔文件進一步壓縮成tar.gz格式,或者對tar.gz格式完成解壓縮
-x -extract 解壓縮已歸檔的指定(或全部)文件
-c -create 建立新的歸檔文件
-v -verbose 生成詳細輸出
-f -file 指定歸檔文件名
-r 向歸檔文件末尾追加文件
-C 改變目錄api
2,壓縮/解壓zip格式
zip file.zip ./directory/* -->壓縮指定目錄下的全部文件及目錄
unzip file.zip -d ./test -->解壓縮到指定目錄
unzip file.zip -->解壓縮到當前目錄
unzip -v largefile.zip -->只查看壓縮包的內容,並不解壓縮tomcat
三:Linux與Windows的幾點區別:
echo $PATH 回顯Linux環境變量PATH的值,Linux下的環境變量必須大寫
echo %path% 回顯Windows環境變量path的值安全
export PATH=/usr/local/tomcat 修改設置Linux環境變量PATH的值(臨時),Linux文件系統路徑是斜槓
set path=D:\Program Files\tomcat 修改Windows環境變量path的值(臨時),Windows文件系統路徑是反斜槓bash
Linux:查看、修改Linux下的用戶級初始文件(.bash_profile),它是個隱藏文件(永久)
Windows:計算機-->屬性-->高級-->環境變量,查看、修改環境變量(永久)服務器
Linux命令搜索用grep,例如netstat -anp|grep 8080
Windows Dos命令搜索用findstr,例如netstat -anp|findstr 8080
Linux下Tomcat的啓動、關閉、殺死進程
打開終端
cd /java/tomcat
#執行
bin/startup.sh #啓動tomcat
bin/shutdown.sh #中止tomcat
tail -f logs/catalina.out #看tomcat的控制檯輸出;
#看是否已經有tomcat在運行了
ps -ef |grep tomcat
#若是有,用kill;
kill -9 pid #pid 爲相應的進程號
例如 ps -ef |grep tomcat 輸出以下
sun 5144 1 0 10:21 pts/1 00:00:06 /java/jdk/bin/java -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/java/tomcat/common/endorsed -classpath :/java/tomcat/bin/bootstrap.jar:/java/tomcat/bin/commons-logging-api.jar -Dcatalina.base=/java/tomcat -Dcatalina.home=/java/tomcat -Djava.io.tmpdir=/java/tomcat/temp org.apache.catalina.startup.Bootstrap start
則 5144 就爲進程號 pid = 5144
kill -9 5144 就能夠完全殺死tomcat
#直接查看指定端口的進程pid
netstat -anp|grep 9217
#結果爲 tcp 0 0 :::9217 :::* LISTEN 26127/java
#則26127爲9217這個端口的tomcat進程的pid,而後就能夠kill這個進程
kill -9 26127
#而後再啓動tomcat便可