用service来管理服务的时候,是在/etc/init.d/目录中创建一个脚本文件,来管理服务的启动和停止,在systemctl中,也类似,文件目录有所不同,在/lib/systemd/system目录下创建一个脚本文件tomcat.service,里面的内容如下:(注意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
CATALINA_PID参数
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 ....略..
创建软链接是为了下一步系统初始化时自动启动服务
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 ...略...
刚刚配置的服务需要让systemctl能识别,就必须刷新配置
$ systemctl daemon-reload
如果没有权限可以使用sudo
$ sudo systemctl daemon-reload
启动tomcat
$ systemctl start tomcat
重启tomcat
$ systemctl restart tomcat
停止tomcat
$ systemctl stop tomcat
tomcat服务加入开机启动
$ systemctl enable tomcat
禁止开机启动
$ systemctl disable tomcat
查看状态
$ systemctl status tomcat
systemctl管理Tomcat启动、停止、重启、开机启动
原文:https://www.cnblogs.com/name-lizonglin/p/12932100.html