最近在做項目的時候,開發完成后需要將打包的可運行jar包注冊為linux系統服務,通過服務啟停命令來控制jar的部署。
一、編寫jar啟動執行的腳本
vim new_monitor-start.sh
腳本:
#!/bin/sh
nohup /usr/local/java/jdk1.8.0_171/bin/java -jar /home/new_monitor/jar/monitor/new_monitor.jar > /home/new_monitor/jar/monitor/new_monitor.log &
echo $! > /var/run/new_monitor.pid
二、編寫jar停止執行的腳本
vim new_monitor-stop.sh
#!/bin/bash
PID=$(cat /var/run/new_monitor.pid)
kill -9 $PID
三、在/usr/lib/systemd/system
下編寫開機自啟腳本
cd /usr/lib/systemd/system
vim new_monitor.service
加入如下內容:
[Unit]
Description=new_monitor_service
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/home/new_monitor/new_monitor-start.sh
ExecStop=/home/new_monitor/new_monitor-stop.sh
PrivateTmp=true
[Install]
WantedBy=multi-user.target
四、啟動、停止、開機自啟動
systemctl start/stop/enable new_monitor
轉載自:https://blog.csdn.net/xiaoxiangzi520/article/details/90602743