树莓派开机自启动应用

前言

树莓派配置开机自启动程序大致有三种,目前最主流的是将程序作为服务启动,本文介绍下树莓派开机启动 jar(SpringBoot打成的jar包)

步骤

  1. 编写启动服务和关闭服务的脚本 start.sh 和 stop.sh 来控制打开和关闭服务
    在这里插入图片描述
    start.sh 代码如下:
#!/bin/sh
echo  "zlink101  service begin start"
export JAVA_HOME=/home/soft/jdk1.8.0_241
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=/home/soft/go/bin:$PATH
cd /mnt/service
sleep 10s
nohup ./xjar java -jar gateway-1.0.0.jar &
echo  "zlink101  service start success"

stop.sh 代码如下:

#!/bin/sh
echo "zlink101 stop begin"
ID=`ps -ef | grep "gateway-1.0.0.jar" | grep -v "grep" | awk '{print $2}'`
echo $ID
for id in $ID
do
kill -9 $id
echo "killed $id"
done
sleep 5s
echo "zlink101 stop success"

写完之后可以运行测试下

  1. 进入 /etc/init.d/ 目录下新建一个空白文件,如:zlink101 并编辑保存以下脚本
#! /bin/bash

### BEGIN INIT INFO
# Provides: Juson
# Required-Start: $network $remote_fs $syslog $time
# Required-Stop: 
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: zlink101 initscript
### END INIT INFO

case "$1" in
    start)
		sh /mnt/service/start.sh
    ;;
    stop)
        sh /mnt/service/stop.sh
	;;
	*)
        exit 1
	;;
esac

exit 0
  1. 将脚本添加至服务中:sudo update-rc.d zlink101 defaults ,最后 reboot 测试下
  2. 执行 sudo service zlink101 start 和 sudo service zlink101 stop 测试下脚本是否正常,通过执行 systemctl status zlink101.service 命令可以查看相应状态及日志,如果运行的过程中改动了脚本需要执行一下 systemctl daemon-reload 重新加载

最后注意文件权限!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值