Linux系统脚本开机自启动,开机自启动jar包vue前台等

脚本内容jiaobenname.sh

#!/bin/bash
# 设置环境变量
export JAVA_HOME=/usr/local/java/jdk-17.0.10
export CLASSPATH=.:$JAVA_HOME/lib/
export PATH=.:$JAVA_HOME/bin:$PATHwhile true; doif ps aux | grep -v grep | grep "tomcat" > /dev/null; thenecho "tomcat started..."elseecho "tomcat is not running. Restarting..."nohup tomcat/bin/startup.sh > /dev/null 2>&1 &fisleep 30
done

标红目录改成你的

执行命令

sudo vim /etc/systemd/system/ziqidong.service

i

加入

[Unit]
Description=Process Watchdog Service
After=network.target[Service]
Type=simple
ExecStart=/nidemulu/jiaobenname.sh  
Restart=on-failure[Install]
WantedBy=multi-user.target

标红目录改成你的

esc

:wq

记得给目录赋权

chmod -R 777 /nidemulu/

chmod -R 777 /etc/systemd/system/

加载 systemd 配置:

sudo systemctl daemon-reload

开机自启动:

sudo systemctl enable ziqidong.service

启动服务:

sudo systemctl start ziqidong.service


检查服务状态:

sudo systemctl status ziqidong.service

# 关闭后台服务

sudo systemctl stop ziqidong.service

# 重启服务
sudo systemctl restart ziqidong.service

我的脚本如下参考

#!/bin/bash
# 设置环境变量
export JAVA_HOME=/usr/local/java/jdk-17.0.10
export CLASSPATH=.:$JAVA_HOME/lib/
export PATH=.:$JAVA_HOME/bin:$PATHRUOYI_PATH="/xx/ruoyi-admin.jar"RUOYI_LOG_FILE="/xx/rouyimonitor.log"while true; doif ps aux | grep -v grep | grep "redis-server" > /dev/null; thenecho "redis-server started..."elseecho "redis-server is not running. Restarting..."redis-server /xxx/redis.conffiif ps aux | grep -v grep | grep "ruoyi-admin.jar" > /dev/null; thenecho "ruoyi-admin.jar started. Check the log at $RUOYI_LOG_FILE"elseecho "ruoyi-admin.jar is not running. Restarting..."nohup java --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/sun.net.util=ALL-UNNAMED -jar -Xms1024M -Xmx2048M -XX:MetaspaceSize=1024M -XX:MaxMetaspaceSize=2048M $RUOYI_PATH > $RUOYI_LOG_FILE 2>&1 &fiif ps aux | grep -v grep | grep "tomcat" > /dev/null; thenecho "tomcat started..."elseecho "tomcat is not running. Restarting..."nohup /xx/startup.sh > /dev/null 2>&1 &fisleep 30
done

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/28322.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【SCAU数据挖掘】数据挖掘期末总复习题库选择题及解析

1.将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?( C ) A.频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 解析:数据预处理是数据分析和数据挖掘的重要步骤之一,包括数据清洗、集成、变换、规约(如维度规约、数值规约)等。这…

ppt添加圆角矩形,并调整圆角弧度方法

一、背景 我们看的论文,许多好看的图都是用PPT做的,下面介绍用ppt添加圆角矩形,并调整圆角弧度方法。 二、ppt添加圆角矩形,并调整圆角弧度 添加矩形: 在顶部工具栏中,点击“插入”选项卡。 在“插图”…

索引-定义、创建(CREATE INDEX)、删除(DROP INDEX)

一、概述 1、索引是SQL语言定义的一种数据对象,是大多数DBMS为数据库中基本表创建的一种辅助存取结构,用于响应特定查询条件进行查询时的查询速度,DBMS根据查询条件从数据库文件中,选择出一条或者多条数据记录以供检索&#xff0…

带你学习Mybatis之Sql绑定

Sql绑定 在mybatis中定义一个接口,然后在mapper.xml文件中编写一个sql语句,在执行该接口中方法的时候就会执行该sql语句,这是怎么做到的呢? public interface UserMapper{ public User getUser(int i);// 在mapper.xml中写一个&l…

springboot优雅shutdown时异步线程安全优化

前面针对graceful shutdown写了两篇文章 第一篇: https://blog.csdn.net/chenshm/article/details/139640775 只考虑了阻塞线程,没有考虑异步线程 第二篇: https://blog.csdn.net/chenshm/article/details/139702105 第二篇考虑了多线程的安全…

基于C#开发web网页管理系统模板流程-参数传递

点击返回目录-> 基于C#开发web网页管理系统模板流程-总集篇-CSDN博客 前言 当用户长时间未在管理系统界面进行操作,或者用户密码进行了更改,显然用户必须重新登录以验证身份,如何实现这个功能呢? HTTP Cookie(也叫 …

2024前端面试准备6-TS基础

1.TS基础类型有哪些?any void unknown never的区别? any 、Number、String、Boolean、Array 、元组、枚举、void、undefined、null、never any: 可以赋予任意类型的值,不进行类型检查,尽量不要用any void: 表示函数没有返回值 …

【Linux】 进程信号的发生

送给大家一句话: 何必向不值得的人证明什么,生活得更好,乃是为你自己。 -- 亦舒 进程信号的发生 1 何为信号2 信号概念的基础储备3 信号产生kill系统调用alarm系统调用异常core term Thanks♪(・ω・)ノ谢谢…

【教程】设置GPU与CPU的核绑(亲和力Affinity)

转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~ 简单来说,核绑,或者叫亲和力,就是将某个GPU与指定CPU核心进行绑定,从而尽可能提高效率。 推荐与进程优先…

1055 集体照(测试点3, 4, 5)

solution 从后排开始输出,可以先把所有的学生进行排序(身高降序,名字升序),再按照每排的人数找到中间位置依次左右各一个进行排列测试点3, 4, 5:k是小于10的正整数,则每…

SQL RIGHT JOIN 详解

SQL RIGHT JOIN 详解 引言 在SQL数据库查询中,JOIN操作用于结合两个或多个表中有关联的行。RIGHT JOIN是一种特殊的JOIN类型,它基于两个表之间的关联,从右表(即RIGHT JOIN后面的表)中返回所有行,即使在左表中没有匹配的行。如果左表中有匹配的行,则RIGHT JOIN还会从左…

线程池ThreadPoolExecutor源码分析

一、线程池基本概念和线程池前置知识 1.1 Java中创建线程的方式有哪些 传统答案: 继承Thread类 通过继承Thread类并重写其run方法来创建线程。具体步骤包括定义Thread类的子类,在子类中重写run方法以实现线程的具体逻辑,然后创建子类的实例…

Unity的三种Update方法

1、FixedUpdate 物理作用——处理物理引擎相关的计算和刚体的移动 (1) 调用时机:在固定的时间间隔内,而不是每一帧被调用 (2) 作用:用于处理物理引擎的计算,例如刚体的移动和碰撞检测 (3) 特点:能更准确地处理物理…

【C/C++】实参与形参的区别

在编程中,形参(形式参数)和实参(实际参数)是函数调用中的两个基本概念,它们在函数定义和函数调用中扮演着不同的角色。 形参(Formal Parameters): 形参是在函数定义时声明…

植物大战僵尸杂交版全新版v2.1解决全屏问题

文章目录 🚋一、植物大战僵尸杂交版❤️1. 游戏介绍💥2. 如何下载《植物大战僵尸杂交版》 🚀二、解决最新2.1版的全屏问题🌈三、画质增强以及减少闪退 🚋一、植物大战僵尸杂交版 《植物大战僵尸杂交版》是一款在原版《…

Es 索引查询排序分析

文章目录 概要一、Es数据存储1.1、_source1.2、stored fields 二、Doc values2.1、FieldCache2.2、DocValues 三、Fielddata四、Index sorting五、小结六、参考 概要 倒排索引 优势在于快速的查找到包含特定关键词的所有文档,但是排序,过滤、聚合等操作…

内存分配器性能优化

背景 在之前我们提到采用自定义的内存分配器来解决防止频繁 make 导致的 gc 问题。gc 问题本质上是 CPU 消耗,而内存分配器本身如果产生了大量的 CPU 消耗那就得不偿失。经过测试初代内存分配器实现过于简单,产生了很多 CPU 消耗,因此必须优…

[Day 11] 區塊鏈與人工智能的聯動應用:理論、技術與實踐

區塊鏈中的加密技術 介紹 區塊鏈技術被認為是現代信息技術的重大突破之一,其應用範圍從加密貨幣到供應鏈管理、醫療健康等各個領域。加密技術在區塊鏈中扮演著至關重要的角色,確保了數據的安全性、完整性和不可篡改性。本文將深入探討區塊鏈中的加密技…

重装系统,以及设置 深度 学习环境

因为联想y7000在ubantu系统上连不到wifi,所以打算弄双系统 第一步:下载win10镜像,之后在系统用gparted新建个分区,格式化成ntfs,用来装win10系统 第二步,制作win10启动盘,这个需要先把u盘用disks格式化&a…

跨语言翻译的突破:使用强化学习与人类反馈提升机器翻译质量

在人工智能领域,知识问答系统的性能优化一直是研究者们关注的焦点。现有的系统通常面临知识更新频繁、检索成本高、以及用户提问多样性等挑战。尽管采用了如RAG(Retrieval-Augmented Generation)和微调等技术,但它们各有利弊&…