centos服务器重启后,jar包自启动

第一种方法:

systemctl服务自启动

在/usr/lib/systemd/system目录下,创建service:start_jar.servie

bash 复制代码
[Unit]
Description=Your Java Application as a Service
After=network.target
 
[Service]
User=root
Type=simple
ExecStart=/usr/bin/java -jar /data/*.jar
Restart=on-failure
 
[Install]
WantedBy=multi-user.target

启动

bash 复制代码
配置生效:systemctl daemon-reload

启动:systemctl start start_jar.service

启停止:systemctl stop start_jar.service

自启动:systemctl enable start_jar.service

第二种方法:

编写脚本auto_start.sh加载到rc.local启动服务中

如下:自动生成脚本:auto_create.sh

bash 复制代码
#!/bin/bash
ScriptPath=/data/auto_start.sh
ScriptPathb=/data/auto_start_bak.sh
if [ -z "$1" ]; then
    echo "jar包的路径不能为空!"
	exit 1 
	
fi
if [ -f "$ScriptPath" ]; then
    echo "文件存在,需要删除!"
    cp $ScriptPath $ScriptPathb
    touch $ScriptPath	
else
    touch $ScriptPath
	echo "空脚本创建成功"

    echo "#!/bin/bash" >> $ScriptPath
	

    echo "nohup java -jar  $1 >/dev/null 2>&1 &" >> $ScriptPath
	
	echo "脚本初始化成功"

    chmod +x /data/auto_start.sh

    #vim /etc/rc.local 打开添加在最后一行。/data/auto_start.sh
	#备份:rc.local
	cp /etc/rc.local /etc/rc.local_bak
	#加载启动脚本到rc.local
    echo "$ScriptPath" >> /etc/rc.local

    chmod +x  /etc/rc.local
	
	echo "脚本添加到自启动中"

fi

执行脚本

bash 复制代码
sh auto_create.sh jar包路径
相关推荐
学传打活4 天前
【边打字.边学昆仑正义文化】_进阶篇5 宇宙星系的运转(续1)
微信公众平台·1024程序员节·汉字·昆仑正义文化
fangzhanpeng16812 天前
快速掌握C#语言基础知识点(1.基础数据类型)
开发语言·c#·1024程序员节
无己心14 天前
面向多平台 AI 搜索引擎的适配层架构设计
前端·人工智能·搜索引擎·ai·1024程序员节
u01030552720 天前
AI驱动的安卓UI自动生成功能实现
人工智能·1024程序员节
u01030552720 天前
长株潭智能体赋能腾讯元器链接共享
1024程序员节
云贝贝贝22 天前
OceanBase认证体系介绍与备考指南
运维·服务器·oceanbase·1024程序员节
u01030552722 天前
Java图像处理实战指南
人工智能·1024程序员节
u01030552723 天前
Java AWT鼠标事件全解析
人工智能·1024程序员节
u01030552725 天前
Java实用类应用精讲
人工智能·1024程序员节
u01030552725 天前
Java I/O核心操作实战
人工智能·1024程序员节