Ubuntu 20.04.2 设置程序开机自启动

Ubuntu 20.04.2 设置程序开机自启动

Ubuntu 20.04.2 设置程序开机自启动

关于Jar包设置开机自启动
乌班图20 放置开机启动文件的目录改变了

首先是进入放置起动脚本的目录 cd /etc/profile.d

root@dell3640:/home/uadmin/huimv.hy# cd /etc/profile.d
root@dell3640:/etc/profile.d# ll
total 64
drwxr-xr-x   2 root root  4096 Mar 23 09:25 ./
drwxr-xr-x 125 root root 12288 Mar 23 09:23 ../
-rw-r--r--   1 root root    96 Dec  5  2019 01-locale-fix.sh
-rw-r--r--   1 root root   833 Nov 20 00:51 apps-bin-path.sh
-rw-r--r--   1 root root   729 Feb  2  2020 bash_completion.sh
-rw-r--r--   1 root root  1003 Aug 13  2019 cedilla-portuguese.sh
-rw-r--r--   1 root root  1107 Nov  4  2019 gawk.csh
-rw-r--r--   1 root root   757 Nov  4  2019 gawk.sh
-rw-r--r--   1 root root   349 Oct 29 00:33 im-config_wayland.sh
-rwxr-xr-x   1 root root  1924 Mar 23 09:25 startall.sh*
-rw-r--r--   1 root root   954 Mar 26  2020 xdg_dirs_desktop_session.sh
-rw-r--r--   1 root root  1557 Feb 17  2020 Z97-byobu.sh
-rwxr-xr-x   1 root root   873 Jan 18 23:40 Z99-cloudinit-warnings.sh*
-rwxr-xr-x   1 root root  3417 Jan 18 23:40 Z99-cloud-locale-test.sh*

演示一下书写启动脚本
下面是我们项目上用到的一个启动脚本

#!/bin/bash
pid=`ps -ef | grep huimv-ql-production-0.0.1-SNAPSHOT.jar  | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
thenecho "kill -9 pid:" $pidkill -9 $pid
fi
echo "start huimv-ql-production   project  log的位置: home/uadmin/production.logs"
cd /home/uadmin/huimv.ycg
nohup   /usr/lib/jvm/java-8-openjdk-amd64/bin/java  -jar -Dfile.encoding=UTF-8 ./huimv-ql-production-0.0.1-SNAPSHOT.jar   >/home/uadmin/huimv.ycg/production.log  2>&1 &

脚本中需要注意的一点

#这里直接用java   -jar   开机时会启动失败 因为JDk还没来得及加载  
nohup  java  -jar -Dfile.encoding=UTF-8 ./huimv-ql-production-0.0.1-SNAPSHOT.jar   >/home/uadmin/huimv.ycg/production.log  2>&1 &#应该用这种   指定java路径
nohup   /usr/lib/jvm/java-8-openjdk-amd64/bin/java  -jar -Dfile.encoding=UTF-8 ./huimv-ql-production-0.0.1-SNAPSHOT.jar   >/home/uadmin/huimv.ycg/production.log  2>&1 &#java的路径可以用  whereis java查看   
root@dell3640:/home/uadmin/huimv.ycg# whereis java
java: /usr/bin/java /usr/share/java   /usr/lib/jvm/java-8-openjdk-amd64/bin/java 

保存启动脚本在此目录下
chmod +x startall.sh 变成可执行文件
直接reboot 进入系统

ps -ef |grep jar

查看服务是否自启动

posted @ 2023-06-01 10:03  飞蚊  阅读(397)  评论(0编辑  收藏  举报