Centos7 daemon.sh, jsvc运行Tomcat守护

目的:Centos7 Daemon.sh运行Tomcat守护

环境:
系统:Centos 7.5
环境:x64,jdk1.8.0_181

需求:
  1. 业务服务依赖Tomcat.
  2. 需要Tocam以守护进程方式留存系统中,无人值守模式。
方法步骤:

1. 以Tomcat包中的jsvc工具包以unix守护进程方式启停Tomcat

1.1 下载Tomcat,官网地址:http://tomcat.apache.org/ ,下载所需要的版本。如图,以8.5.37为例
在这里插入图片描述
1.2 由于编译jsvc需要java环境,所以需要提前安装jdk,这里就不做安装介绍了。
1.3 编译jsvc, 将下载的zip包放到指定目录下(示例目录为/home/cts/tomcat/)

	unzip apache-tomcat-8.5.37.zip
	
	cd ./apache-tomcat-8.5.37/bin/
	
	tar -zxvf commons-daemon-native.tar.gz 
	
	cd commons-daemon-native/unix/
	
	./configure
	
	make
	
	cp jscv /home/cts/tomcat/apache-tomcat-8.5.37/bin/
	
	补充说明:若没有配置JAVA_HOME,可以手动指定(./configure --with-java=jdk路径)

1.4 测试使用jsvc启动tomcat

1.4.1 更改damon.sh部分内容:

	vim /home/cts/tomcat/apache-tomcat-8.5.37/bin/daemon.sh
	添加如下改动:
	
	1. 在首行 #!/bin/sh 的下一行添加一条服务配置信息
	# chkconfig: 2345 20 80
	补充说明:注意#不能去掉。#chkconfig 的2345表示默认服务级别,启动顺序为20,关闭顺序为80。
	
	2. 在代码最开始位置添加JAVA_HOME和CATALINA_HOME路径,如下
	#modify JAVA_HOME path and CATALINA_HOME path。
	JAVA_HOME=/home/jdk1.8.0_181
	CATALINA_HOME=/home/cts/tomcat/apache-tomcat-8.5.37
	echo "JAVA_HOME":$JAVA_HOME
	echo "CATALINA_HOME":$CATALINA_HOME

	3. 更改TOMCAT_USER
	找到 test ".$TOMCAT_USER" = . && TOMCAT_USER= 这一行,在等号后面加上用户
	如:test ".$TOMCAT_USER" = . && TOMCAT_USER= root
	补充说明:
	如果用root用户启动,也可以不指定,在start模块里面去掉-user $TOMCAT_USER \
	
	4.指定日志位置,也可以默认。
	找到test ".$CATALINA_OUT" = . && CATALINA_OUT=这行,更改路径。

1.4.2 执行daemon.sh,并测试效果

1. 执行
	chmod +x daemon.sh
	./daemon.sh start


2. 测试tomcat是否正常运行,如有问题可查看catalina-daemon.out日志对应解决。
	访问http://ip:8080查看tomcat是否运行
	
3. 测试守护进程
	netstat -apn | grep 8080
	kill -9 占用8080的进程
	稍等片刻,看tomcat是否会自动开起来。

2. 将daemon.sh启动脚本添加到到服务,开机自启动**

	1. 添加服务
	cp daemon.sh /etc/init.d/tomcat
	
	chkconfig --add tomcat
	chkconfig --list tomcat #查看服务是否添加成功
	
	2. 使用服务
	#开启tomcat服务
	service tomcat start
	关闭tomcat服务
	#service tomcat stop
	#重启tomcat服务
	service tomcat restart
	#查看tomcat服务的状态
	service tomcat status
	
	
	3. 测试开机自启动, ps查看是否自启动
	reboot
	ps -aux | grep tomcat

ps:
1. 在daemon.sh start执行不成功的时候,可以尝试一下daemon.sh run试试,看脚本是否ok。若run可以开启tomcat,比较多的情况是start模块里面的这行代码导致 -user $TOMCAT_USER -user $TOMCAT_USER \ 。解决方式是去掉这行,然后保存运行。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值