虚拟主机

帮助中心 >  产品文档 >  虚拟主机 >  虚拟主机常见问题及技术支持 >  CentOS7增加tomcat启动、停止(使用systemctl进行配置)

CentOS7增加tomcat启动、停止(使用systemctl进行配置)


这篇文章主要介绍了CentOS7 增加tomcat 启动、停止(使用systemctl进行配置),需要的朋友可以参考下

1,centos7 使用 systemctl 替换了 service命令 

参考:redhat文档: 

https://www.landui.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/sect-Managing_Services_with_systemd-Services.html#sect-Managing_Services_with_systemd-Services-List 


查看全部服务命令: 

systemctl list-unit-files --type service 

查看服务 

systemctl status name.service 

启动服务 

systemctl start name.service 

停止服务 

systemctl stop name.service 

重启服务 

systemctl restart name.service增加开机启动 

systemctl enable name.service 

删除开机启动 

systemctl disable name.service 

其中.service 可以省略。 



2,tomcat增加启动参数 

tomcat 需要增加一个pid文件 

在tomca/bin 目录下面,增加 setenv.sh 配置,catalina.sh启动的时候会调用,同时配置java内存参数。 



代码如下:


#add tomcat pid

CATALINA_PID="$CATALINA_BASE/tomcat.pid"

#add java opts

JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"



3,增加tomcat.service 


在/usr/lib/systemd/system目录下增加tomcat.service?目录必须是绝对目录。 



代码如下:


[Unit]

Description=Tomcat

After=syslog.target network.target remote-fs.target nss-lookup.target


[Service]

Type=forking

PIDFile=/data/tomcat/tomcat.pid

ExecStart=/data/tomcat/bin/startup.sh 

ExecReload=/bin/kill -s HUP $MAINPID

ExecStop=/bin/kill -s QUIT $MAINPID

PrivateTmp=true


[Install]

WantedBy=multi-user.target



[unit]配置了服务的描述,规定了在network启动之后执行。[service]配置服务的pid,服务的启动,停止,重启。[install]配置了使用用户。 


4,使用tomcat.service 

配置开机启动 


systemctl enable tomcat 



启动tomcat 

systemctl start tomcat 

停止tomcat 

systemctl stop tomcat 

重启tomcat 

systemctl restart tomcat 



因为配置pid,在启动的时候会再tomcat根目录生成tomcat.pid文件,停止之后删除。 


同时tomcat在启动时候,执行start不会启动两个tomcat,保证始终只有一个tomcat服务在运行。 


多个tomcat可以配置在多个目录下,互不影响。

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: