Linux系统配置开机自动启动Java项目
在我们写完项目后,项目后端要部署到服务器上。如遇到服务器出现故障导致重启,项目还需要手动进行启动,才不会影响项目的正常运行。
这篇文章为大家提供配置Java项目系统开机自启!
1、准备工作
- Linux中Java的路径
- 项目jar包绝对路径
- 项目外置配置文件(没有可不准备)
2、创建自启脚本jar_auto.sh
在/etc/rc.d/init.d目录下创建jar_auto.sh文件可使用vi命令或touch命令创建jar_auto.sh
,文件名称可自定义
# 改变目录
cd /etc/rc.d/init.d
# 创建文件
vi jar_auto.sh
# 或 touch jar_auto.sh
创建好后编写自定义启动脚本内容
#!/bin/bash
# 表示延迟30秒启动
# sleep 30
# 配置jar包启动的路径 日志生成路径 nohup表示静默启动
# 两种启动jar包命令的写法,one.使用java的绝对路径的命令,two.使用已配置好的全局java命令(根据自己喜好二选一即可)
# one.使用java的绝对路径的命令
nohup /usr/local/baseServer/jdk1.8/bin/java -mx256M -Diname=buss-admin -Xrs -jar /home/application/bussManager/lib/buss-admin.jar --spring.config.location=/home/application/bussManager/conf/application.yml > /home/application/bussManager/logs/buss-admin.log&
# two.使用已配置好的全局java命令
#nohup java -mx256M -Diname=buss-admin -Xrs -jar /home/application/bussManager/lib/buss-admin.jar --spring.config.location=/home/application/bussManager/conf/application.yml > /home/application/bussManager/logs/buss-admin.log&
# 如果有多个jar需要启动,可以继续按照one或two配置。如下:
#nohup java -jar /home/application/bussManager/jar/one.jar > /home/application/bussManager/logs/one.log&
#nohup java -jar /home/application/bussManager/jar/two.jar >/home/application/bussManager/logs/two.log&
如果有需要延时启动,可以使用sleep + 数字(标识延迟多少秒启动)
进行设置
3、为脚本文件赋予执行权限
使用**chmod +x** 命令标识将该文件设置为可执行文件
chmod +x /etc/rc.d/init.d/jar_auto.sh #赋予执行权限
4、为jar脚本赋予开机自启权限
编辑/etc/rc.d
目录下的rc.local
文件,将jar启动脚本加入该文件中即可。
vim /etc/rc.d/rc.local
rc.local文件中加入jar启动脚本文件绝对路径,如下:
# rc.local文件
/etc/rc.d/init.d/jar_auto.sh
如图:
5、赋予/etc/rc.d/rc.local文件执行权限
将jar脚本文件目录添加到rc.local文件后,需要为文件重新赋予执行权限,执行**chmod -x**命令
chmod +x /etc/rc.d/rc.local
6、使用reboot命令重启Linux系统,使用ps -ef | grep buss-admin 命令查看是否启动成功!
# 重启系统
reboot
# 启动完成后查看jar包是否已启动
ps -ef | grep buss-admin
如图:则测试成功!