zoukankan      html  css  js  c++  java
  • Linux centos7下设置Tomcat开机自启动

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

    参考:redhat文档:

    查看全部服务命令:
    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增加启动参数

    2.1 tomcat 需要增加一个pid文件

    tomcat.pid文件与bin目录平级。

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

    1. #add tomcat pid  
    2. CATALINA_PID="$CATALINA_BASE/tomcat.pid"  
    3. #add java opts  
    4. JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"  

    3,增加tomcat.service

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

    1. [Unit]
    2. Description=Tomcat
    3. After=syslog.target network.target remote-fs.target nss-lookup.target
    4. [Service]
    5. Type=forking
    6. Environment="JAVA_HOME=/usr/local/java"
    7. PIDFile=/usr/local/tomcat/tomcat.pid
    8. ExecStart=/usr/local/tomcat/bin/startup.sh
    9. ExecReload=/bin/kill -s HUP $MAINPID
    10. ExecStop=/bin/kill -s QUIT $MAINPID
    11. PrivateTmp=true
    12. [Install]
    13. WantedBy=multi-user.target

    注意:Environment="JAVA_HOME=/home/jdk/jdk1.7.0_79" 这里要配置环境变量,在/etc/profile中的配置在系统服务中不生效。


    [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可以配置在多个目录下,互不影响。


    5.其它

    修改tomcat.service文件后需要执行下面命令使其生效:
    systemctl daemon-reload
    查询tomcat 进程  ps -ef | grep "tomcat"| grep -v grep
    如果多个tomcat,则拷贝到不同的目录,使用不同的端口。tomcat.service文件名不同即可。
    例如:tomcat1.service tomcat2.service tomcat3.service

  • 相关阅读:
    SSH出现Connection refused错误
    Lisp经典算法
    Arch Linux下韩文重叠显示
    Vim在图形环境下全屏产生黑边
    Vim常用插件安装及配置方法
    Python中Scrapy框架元素选择器XPath的简单实例
    Manjaro下Steam无法启动
    GNOME禁用GDM中night-light功能
    Neovim中提示Error: Required vim compiled with +python
    Manjaro下带供电的USB Hub提示error -71
  • 原文地址:https://www.cnblogs.com/jpfss/p/10325074.html
Copyright © 2011-2022 走看看