Centos7自定义系统服务
一、编写服务脚本
以nursed服务为例:
进入 /usr/lib/systemd/system, 新建nursed.service文件,写入如下内容。
[Unit]
#服务描述
Description=Nursed Service
#设置在某个服务启动后启动:这里为指mysql服务启动后再启动本服务
After=network.target mysqld.service
[Service]
#后台运行的形式
Type=forking
#启动命令,执行该脚本
ExecStart=/usr/nursed/start-nursed.sh
#重启命令,执行该脚本
ExecReload=/usr/nursed/restart-nursed.sh
#停止命令,执行该脚本
ExecStop=/usr/nursed/stop-nursed.sh
#启动失败时,执行重启命令
Restart=on-failure
PrivateTmp=true
[Install]
WantedBy=multi-user.target
启动脚本:start-nursed.sh
#!/usr/bin/env bash
nohup java -jar /usr/nursed/nursed-1.0.0-SNAPSHOT.jar >/dev/null 2>/var/log/nursed/errors.log &
停止服务脚本:stop-nursed.sh
#!/usr/bin/env sh
kill -9 $(ps aux | grep nursed-1.0 | awk ‘NR==1{print $2}’)
重启服务脚本:restart-nursed.sh
#!/usr/bin/env sh
./stop-nursed.sh
./start-nursed.sh
二、加载服务并设置启动
systemctl reload *.service #重新加载服务配置文件
然后就可以启动服务了,
systemctl start nursed.service即可
设置开机启动: systemctl enable nuresd.service
三、常用命令介绍
systemctl常见命令:
systemctl is-enabled servicename.service #查询服务是否开机启动
systemctl enable *.service #开机运行服务
systemctl disable *.service #取消开机运行
systemctl start *.service #启动服务
systemctl stop *.service #停止服务
systemctl restart *.service #重启服务
systemctl reload *.service #重新加载服务配置文件
systemctl status *.service #查询服务运行状态
systemctl –failed #显示启动失败的服务
————————————————
版权声明:本文为CSDN博主「明天争取」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zpwangshisuifeng/java/article/details/93222501
最活跃的读者