美文网首页
Tomcat常用配置与命令(Linux)

Tomcat常用配置与命令(Linux)

作者: MaoMspring | 来源:发表于2022-06-17 10:37 被阅读0次

    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
    
    • 使用true命令重定向清空文件
    [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
    
    • 使用cat/cp/dd命令及/dev/null设备来清空文件
    第一种:
    [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
    
    • 使用echo命令清空文件
      echo -n " " > catalina.out ==》加上"-n"参数,默认情况下会"\n",也就是回车符
    [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
    
    • 使用truncate命令清空文件
      truncate -s 0 catalina.out -s参数是设置文件的大小,清空文件的话,就设定为0
    [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
    

    相关文章

      网友评论

          本文标题:Tomcat常用配置与命令(Linux)

          本文链接:https://www.haomeiwen.com/subject/crgcvrtx.html