Ubuntu使用systemd设置开机自启动

systemd设备Jar自启动

对于当前用户master家目录下/home/masterspring-boot-vue.jar,设置开机自启动。

创建Service服务

/lib/systemd/system/目录下创建要自动启动的服务runMonitor.service,在/etc/systemd/system目录下创建也可以。

[Unit]
Description=ipc
After=network.target

[Service]
Type=forking
User=master
# 服务启动时执行的脚本,
### 使用sh命令包括其他Linux系统命令时都要使用全路径,/bin/sh等,包括.sh文件也需要使用绝对路径,才能找到。
ExecStart=/bin/sh /home/master/runMonitor.sh
# 服务停止时执行的脚本
ExecStop=/bin/sh /home/master/stopMonitor.sh
# Restart=always 表示程序退出就会重启,未进行测试
# Restart=always
[Install]
WantedBy=multi-user.target

使用sh命令包括其他Linux系统命令时都要使用全路径,/bin/sh等,包括.sh文件也需要使用绝对路径,才能找到。否则会报错误。

/home/master下创建启动脚本runMonitor.sh

#!/bin/bash
# 设置java环境变量,否则不能使用java -jar 命令,需要写全路径
export JAVA_HOME=/home/master/jdk1.8.0_161
export PATH=$JAVA_HOME/bin:$PATH

nohup java -jar /home/master/spring-boot-vue.jar > /home/master/springBootVue.log 2>&1 &
# 输出进行号到指定文件,方便下面的停止脚本使用
echo $! > /home/master/run/runMonitor.pid

/home/master下创建停止脚本stopMonitor.sh

#/bin/sh
PID=$(cat /home/master/run/runMonitor.pid)
kill -9 $PID
rm -fr /home/master/run/runMonitor.pid

使用测试

  1. runMonitor.shstopMonitor.sh添加可执行权限
chmod +x runMonitor.sh
chmod +x stopMonitor.sh

在这里插入图片描述

  1. 刷新服务配置
sudo systemctl daemon-reload
  1. 启动服务
sudo systemctl start runMonitor
  1. 查询服务状态
sudo systemctl status runMonitor

在这里插入图片描述

  1. 关闭服务
sudo systemctl stop runMonitor

在这里插入图片描述

服务加入开机启动

sudo systemctl enable runMonitor.service

系统会自动在/etc/systemd/system/multi-user.target.wants下再新建一个runMonitor.service软链接。
在这里插入图片描述
参考一:https://www.freesion.com/article/84901418968/
参考二:https://www.freesion.com/article/8880495624/
参考三:https://www.dazhuanlan.com/xlxd/topics/1653197

以上脚本下载请访问:Linux开机自启动脚本

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值