首页 > 系统相关 >ubuntu 开机自启动jar,同时监控端口好,服务崩溃自动重启,编写sh脚本

ubuntu 开机自启动jar,同时监控端口好,服务崩溃自动重启,编写sh脚本

时间:2022-10-12 09:36:37浏览次数:56  
标签:bin 端口 jar server sh 自启动 home

1. 编写sh脚本 用于开机自启动个

在这个模块中注意:java 环境一定要写!!!!我其中没有写java环境,发现没有启动成功

root@hfxyai-OptiPlex-5000-China-HDD-Protection:/home/server# gedit /etc/init.d/server.sh

#!/bin/sh
### BEGIN INIT INFO
# Provides:          autoJar.sh
# Required-start:    $local_fs $remote_fs $network $syslog
# Required-Stop:     $local_fs $remote_fs $network $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts the svnd.sh daemon
# Description:       starts svnd.sh using start-stop-daemon
### END INIT INFO
export JAVA_HOME=/home/data/java
export PATH=${JAVA_HOME}/bin:$PATH

#路径问题 很关键
cd /home/server
nohup java -jar hf-lab-0.0.1-SNAPSHOT.jar >/home/server/nohup.log&
#./taskStartTomcat.sh
echo "运行正常!"

通过chmod 775 server.sh 

授权

sudo update-rc.d server.sh defaults 90

然后reboot 重启生效

2. 编写监听端口的sh脚本



#!/bin/sh
export JAVA_HOME=/home/data/java
export PATH=${JAVA_HOME}/bin:$PATH
time=`date +%Y-%m-%d-%H:%M`
app=`netstat -pltun |grep 8085 |wc -l`
 
if [ $app -eq 0 ];then
  #如果端口没有占用的话要怎么怎么样
  cd /home/server
  nohup java -jar /home/server/hf-lab-0.0.1-SNAPSHOT.jar >>/home/server/nohup.log &
   echo "停止运行了,停止的时间是 " $time >>/home/server/test.log
else
  #如果端口被占用的话要怎么怎么样
 echo "执行结束时间:" $time1 >>/home/server/test.log
fi

root@hfxyai-OptiPlex-5000-China-HDD-Protection:/home/server# chmod +x taskStartTomcat.sh

 通过chmod 775 taskStartTomcat.sh  授权

3. 开启定时任务 

crontable 在ubuntu20是默认安装的,如果没安装可以直接sudo apt-get install cron安装

root@hfxyai-OptiPlex-5000-China-HDD-Protection:/home/server# crontab -e
//

*/1 * * * * sh /home/server/taskStartTomcat.sh

重启cron服务:service cron restart

标签:bin,端口,jar,server,sh,自启动,home
From: https://www.cnblogs.com/youran-he/p/16783365.html

相关文章

  • 【模板】HASH
    intmod_in_queue[30]={ 998244353,993244853,1000000007,1000000021,1000000087,1000000097,1000000123,1000000207,1000000241,1000000289,1000000321,1000000363,100......
  • CSharp: Chain of Responsibility Pattern in donet core 3
     ///<summary>///责任链模式ChainofResponsibilityPattern亦称:职责链模式、命令链、CoR、ChainofCommand、ChainofResponsibility///geovindu,......
  • Ceph使用---Crush Map进阶
    一、CephCrushMap介绍ceph集群中由mon服务器维护的的五种运行图:Monitormap#监视器运行图OSDmap#OSD运行图PGmap#PG运行图Crushmap#(Controllersrepl......
  • CF741D Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths
    CF741DArpa’sletter-markedtreeandMehrdad’sDokhtar-koshpaths给定一颗以\(1\)为根的树每个节点上有一个\(a\simv\)的小写字母,求每个子树内最长的链的长度......
  • zsh美化
    首先执行以下命令安装oh-my-zshsh-c"$(curl-fsSLhttps://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"安装高亮插件zsh-syntax-highlightingsh-c"......
  • hash算法
    hash算法是将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值。1、哈希值是一段数据唯一且极其紧凑的数值表示形式。哈希表中元素是由哈希......
  • Springboot项目打war,jar包流程
    Springboot项目打jar包流程1、在POM中确定MAVEN打包插件已经引入<build>   <plugins>       <plugin>           <groupId>org.springframework.b......
  • HashMap实现原理及源码分析
    哈希表(hashtable)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常常出现......
  • shell 知识点补充(1)-提示字符的设定/read/declare / typeset/变量设定功能/别名/万用
    1、PS1:(提示字符的设定)这个比较有意思,可以定制自己的提示符;当我们每次按下[Enter]按键去执行某个指令后,最后要再次出现提示字符时,就会主动去读取这个变数值了。预设的......
  • shell 知识点补充(2)-重定向/ ; , &&, ||/管线命令/grep/sort/ uniq/wc/tee/tr/col/jo
    1、重定向1.标准输入(stdin):代码为0,使用<或<<;(重写或追加)2.标准输出(stdout):代码为1,使用>或>>;3.标准错误输出(stderr):代码为2,使用2>或2>>;eg:yee@Loon......