利用systemctl管理Tomcat启动、停止、重启及开机启动详解
前言
本文主要给大家介绍了关于systemctl管理tomcat启动、停止、重启及开机启动的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。
1. 创建服务
用service来管理服务的时候,是在/etc/init.d/目录中创建一个脚本文件,来管理服务的启动和停止,在systemctl中,也类似,文件目录有所不同,在/lib/systemd/system目录下创建一个脚本文件tomcat,里面的内容如下:
[unit] description=tomcat after=network.target [service] type=forking pidfile=/usr/local/tomcat/pid execstart=/usr/local/tomcat/bin/catalina.sh start execreload=/usr/local/tomcat/bin/catalina.sh restart execstop=/usr/local/tomcat/bin/catalina.sh stop [install] wantedby=multi-user.target
[unit] 表示这是基础信息
- description 是描述
- after 是在那个服务后面启动,一般是网络服务启动后启动
[service] 表示这里是服务信息
- type 是服务类型
- pidfile 是服务的pid文件路径, 开启后,必须在tomcat的bin/catalina.sh中加入catalina_pid参数
- execstart 是启动服务的命令
- execreload 是重启服务的命令
- execstop 是停止服务的指令
[install] 表示这是是安装相关信息
- wantedby 是以哪种方式启动:multi-user.target表明当系统以多用户方式(默认的运行级别)启动时,这个服务需要被自动运行。
tomcat的bin/catalina.sh中加入catalina_pid参数时,需要在# os specific support.上加入
catalina_pid=/usr/local/tomcat/pid # os specific support. $var _must_ be set to either true or false. cygwin=false ....略..
2. 创建软链接
创建软链接是为了下一步系统初始化时自动启动服务
ln -s /lib/systemd/system/tomcat.service /etc/systemd/system/multi-user.target.wants/tomcat.service
创建软链接就好比windows下的快捷方式
ln -s 是创建软链接
ln -s 原文件 目标文件(快捷方式的决定地址)
如果创建软连接的时候出现异常,不要担心,看看/etc/systemd/system/multi-user.target.wants/ 目录是否正常创建软链接为准,有时候报错只是提示一下,其实成功了。
$ ll /etc/systemd/system/multi-user.target.wants/ total 8 drwxr-xr-x 2 root root 4096 mar 30 15:46 ./ drwxr-xr-x 13 root root 4096 mar 13 14:18 ../ lrwxrwxrwx 1 root root 31 nov 23 14:43 tomcat.service -> /lib/systemd/system/tomcat.service ...略...
3. 刷新配置
刚刚配置的服务需要让systemctl能识别,就必须刷新配置
$ systemctl daemon-reload
如果没有权限可以使用sudo
$ sudo systemctl daemon-reload
4. 启动、重启、停止
启动tomcat
$ systemctl start tomcat
重启tomcat
$ systemctl restart tomcat
停止tomcat
$ systemctl stop tomcat
5. 开机自启动
tomcat服务加入开机启动
$ systemctl enable tomcat
禁止开机启动
$ systemctl disable tomcat
6. 查看状态
查看状态
$ systemctl status tomcat
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
上一篇: IIS里FTP多用户设置方法,终于不用Serv-U了
下一篇: docker容器内服务随容器自启动