查看全部服务命令: 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.1 tomcat 需要增加一个pid文件
tomcat.pid文件与bin目录平级。
2.2 在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"
在/usr/lib/systemd/system目录下增加tomcat.service,目录必须是绝对目录。
[Unit] Description=Tomcat After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking Environment="JAVA_HOME=/usr/local/java" PIDFile=/usr/local/tomcat/tomcat.pid ExecStart=/usr/local/tomcat/bin/startup.sh ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true [Install] WantedBy=multi-user.target 注意:Environment="JAVA_HOME=/home/jdk/jdk1.7.0_79" 这里要配置环境变量,在/etc/profile中的配置在系统服务中不生效。
[unit]配置了服务的描述,规定了在network启动之后执行。[service]配置服务的pid,服务的启动,停止,重启。[install]配置了使用用户。
配置开机启动
systemctl enable tomcat
启动tomcat systemctl start tomcat 停止tomcat systemctl stop tomcat 重启tomcat systemctl restart tomcat
因为配置pid,在启动的时候会再tomcat根目录生成tomcat.pid文件,停止之后删除。
同时tomcat在启动时候,执行start不会启动两个tomcat,保证始终只有一个tomcat服务在运行。
多个tomcat可以配置在多个目录下,互不影响。