Tomcat常用配置与命令(Linux)

2022-06-17  本文已影响0人  MaoMspring

Tomcat常用配置与命令(Linux)

1、启动tomcat服务

切换到tomcat主目录下的bin目录(cd usr/local/tomcat/bin)
方式一:直接启动 ./startup.sh
方式二:作为服务启动 nohup ./startup.sh &
方式三:控制台动态输出方式启动 ./catalina.sh run 动态地显示tomcat后台的控制台输出信息,Ctrl+C后退出并关闭服务
方式四:后台启动 sh startup.sh (常用)
解释:
通过方式一、方式三启动的tomcat有个弊端,当客户端连接断开的时候,tomcat服务也会立即停止,通过方式二可以作为linux服务一直运行
通过方式一、方式二方式启动的tomcat,其日志会写到相应的日志文件中,而不能动态地查看tomcat控制台的输出信息与错误情况,通过方式三可以以控制台模式启动tomcat服务,
直接看到程序运行时后台的控制台输出信息,不必每次都要很麻烦的打开catalina.out日志文件进行查看,这样便于跟踪查阅后台输出信息。tomcat控制台信息包括log4j和System.out.println()等输出的信息。

2、关闭tomcat服务

方式一:./shutdown.sh
方式二:sh shutdown.sh (常用)

3、Linux下启动tomcat无法找到./catalina.sh文件无权限

[root@test233 bin]# sh startup.sh 
Cannot find ./catalina.sh
The file is absent or does not have execute permission
This file is needed to run this program
解决办法:
给.sh文件授权
[root@test233 bin]#  chmod +x *.sh  
再启动,成功
[root@test233 bin]# sh startup.sh 

4、调整Tomcat启动参数

在对应linux下的tomcat版本中,修改 catalina.sh

vi /usr/tomcat/bin/catalina.sh

注: /usr/tomcat/bin/catalina.sh 是 tomcat所在目录的bin目录
找到 # OS specific support. $var must be set to either true or false.在上句之前加入

# JAVA_OPTS
JAVA_OPTS="-Xms2g -Xmx2g -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:NewSize=512m -XX:MaxPermSize=256m"
# CATALINA_OPTS
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote  -Dcom.sun.management.jmxremote.port=9004"
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"

5、清空catalina.out日志,不需要重启tomcat

[root@localhost logs]# du -h catalina.out  查看文件大小
17M catalina.out
[root@localhost logs]# > catalina.out   重定向清空文件
[root@localhost logs]# du -h catalina.out  查看文件大小
0   catalina.out
[root@localhost logs]# du -h catalina.out
448K    catalina.out
[root@localhost logs]# true > catalina.out 
[root@localhost logs]# du -h catalina.out 
0   catalina.out
第一种:
[root@localhost logs]# du -h catalina.out
448K    catalina.out
[root@localhost logs]# cp /dev/null > catalina.out 
[root@localhost logs]# du -h catalina.out 
0   catalina.out
第二种:
[root@localhost logs]# du -h catalina.out
448K    catalina.out
[root@localhost logs]# cp /dev/null catalina.out cp: overwrite `catalina.out`? y
[root@localhost logs]# du -h catalina.out 
0   catalina.out
第三种:
[root@localhost logs]# du -h catalina.out
448K    catalina.out
[root@localhost logs]# dd if=/dev/null of=catalina.out 
[root@localhost logs]# du -h catalina.out 
0   catalina.out
[root@localhost logs]# du -h catalina.out
448K    catalina.out
[root@localhost logs]# echo -n  " " > catalina.out 
[root@localhost logs]# du -h catalina.out 
0   catalina.out
[root@localhost logs]# du -h catalina.out
448K    catalina.out
[root@localhost logs]# truncate -s 0 catalina.out 
[root@localhost logs]# du -h catalina.out 
0   catalina.out

6、catalina.out日志割接

Tomcat的catalina.out日志分割有多种方式,如logrotate、cronolog等,本文采用最简单的shell方式。

[root@nginx01 ~]# more  /root/script/catalina_out.sh
#!/bin/sh
#该脚本用于catalina.out日志割接
y=`date "+%Y"`
m=`date "+%m"`
d=`date "+%d" -d "-1day"`

#for tomcat
log_file1=/home/tomcat/apache-tomcat-7.0.62/logs
#for csr
log_file2=/home/tomcat/apache-tomcat_csr/logs

cd $log_file1 
cp catalina.out catalina.out.$y$m$d
echo > catalina.out

cd $log_file2
cp catalina.out catalina.out.$y$m$d
echo > catalina.out
exit
由于catalina.out日志会不断增长,故部署此脚本每天零点对日志文件进行割接,每天生成一个日志文件,便于查看。
[root@nginx01 ~]# crontab -l
0 0 * * * /root/script/catalina_out.sh  1>/dev/null 2>&1
上一篇下一篇

猜你喜欢

热点阅读