在Linux系统下,启动和关闭Tomcat使用命令 *** 作。
进入Tomcat下的bin目录
停止Tomcat服务命令
执行tomcat ..shutdown.sh 后,虽然tomcat服务不能正常访问了,但是ps -ef | grep tomcat 后,发现tomcat对应的java进程未随web容器关闭而销毁,进而存在僵尸java进程。网上看了下导致僵尸进程的原因可能是有非守护线程(即User Thread)存在,jvm不会退出(当JVM中所有的线程都是守护线程的时候,JVM就可以退出了;如果还有一个或以上的非守护线程则JVM不会退出)。通过一下命令查看Tomcat进程是否结束:
若显示一下相似信息,说明Tomcat进程未结束
此时我们可强制结束该进程(僵尸进程)
上一命令执行完毕后,重新查看Tomcat进程情况,Tomcat已完全停止。
1:root创建新账户useraddtest_tomcat (此命令后在/home目录下生成一个test_tomcat的用户目录,并生成一个test_tomcat用户组); 创建新用户并给新用户分配到已有用户组:useradd -g 组名 test_tomcat; 用户添加附属组:useradd -G 组名 test_tomcat 或 useradd -g 主组名 -G 附属组名test_tomcat; 2:设置密码 passwdtest_tomcat 3:更改tomcat所属用户及权限 chown test_tomcat var/tomcat/default (var/tomcat/defaulttomcat安装目录)(将tomcat拥有者更改为test_tomcat) chgrp -R test_tomcat var/tomcat/default ( 改变tomcat用户组为 test_tomcat,-R表示递归既改变目录下所有文件 ) chmod -R g+w var/tomcat/default ( 给目录所属组添加写的权限,g:文件所属组,u:文件所属用户,o:表示其他用户,a:表示所有用户;"+":表添加权限,"-":减少权限;w:写,r:读,x:执行 ) 4:端口转发非root用户不能监听1024以下端口;启动时错误报没有权限;所以需要将80端口转发至8080端口 iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080 将规则保存至iptables里面:service iptables save 修改tomcat conf文件内service.xml文件将80端口改为80805:切换用户停止/启动tomcat su test_tomcat( 切换至test_tomcat用户 ) var/tomcat/default/bin/.shutdown.sh 停止tomcat var/tomcat/default/bin/startup.sh 启动tomcatLinux下tomcat服务的启动、关闭与错误跟踪,使用PuTTy远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务:切换到tomcat主目录下的bin目录(cd usr/local/tomcat/bin)1,启动tomcat服务
方式一:直接启动 ./startup.sh
方式二:作为服务启动 nohup ./startup.sh &
方式三:控制台动态输出方式启动 ./catalina.sh run 动态地显示tomcat后台的控制台输出信息,Ctrl+C后退出并关闭服务
解释:
通过方式一、方式三启动的tomcat有个弊端,当客户端连接断开的时候,tomcat服务也会立即停止,通过方式二可以作为linux服务一直运行
通过方式一、方式二方式启动的tomcat,其日志会写到相应的日志文件中,而不能动态地查看tomcat控制台的输出信息与错误情况,通过方式三可以以控制台模式启动tomcat服务,
直接看到程序运行时后台的控制台输出信息,不必每次都要很麻烦的打开catalina.out日志文件进行查看,这样便于跟踪查阅后台输出信息。tomcat控制台信息包括log4j和System.out.println()等输出的信息。
2,关闭tomcat服务
./shutdown.sh
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)