Centos7 自己写了一个java程序的jar包,需要写一个脚本,然后设置成开机自启动,应该怎么做? 200

因为程序需要连接数据库,数据库是自启动的,所以必须在mysql后启动sh脚本后台运行jar包... 因为程序需要连接数据库,数据库是自启动的,所以必须在mysql后启动
sh脚本后台运行jar包
展开
 我来答
firesk
2017-08-24 · TA获得超过228个赞
知道小有建树答主
回答量:240
采纳率:100%
帮助的人:137万
展开全部
首先: centos 7默认 /etc/rc.local是没有执行权限的,所以:
第一步: chmod+x /etc/rc.local
第二步:把你要开机启动的脚本加到这个文件最后。保存就可以了
没错,就这么简单,哈哈,好运
抛抛year
2018-05-17
知道答主
回答量:6
采纳率:0%
帮助的人:3.2万
展开全部

一、chkconfig方式:

示例脚本名:autoStart.sh

1、脚本放到/etc/rc.d/init.d下面

2、给予执行权限 chmod +x autoStart.sh

3、添加自启chkconfig --add autoStart.sh

4、设置自启chkconfig autoStart.sh on

二、systemctl方式(contos7推荐):

示例脚本名:autoStart.sh,示例服务名:autoStart.service

1、编写脚本文件:vim autoStart.sh

#!/bin/bash
#chkconfig:2345 10 90
#description:sh test
#需求的java环境引入
export JDK_HOME=/application/jdk
export JAVA_HOME=/application/jdk
#下面是开机启动实际需要做的功能,示例为启动rocketmq的namesrv
sh /application/rocketmq-all-4.1.0/bin/mqnamesrv &

2、编写service文件:vim autoStart.service,ExecStart指定好运行脚本的路径

[Unit]  
Description=rqnamesrv
After=network.target
[Service]  
Type=forking
ExecStart=/autoStart.sh
ExecReload=  
ExecStop=
PrivateTmp=true  
[Install]  
WantedBy=multi-user.target

3、给脚本授予执行权限:chmod +x autoStart.sh

4、用mv命令将service文件放到/usr/lib/systemd/system目录下并赋予执行权限:chmod +x autoStart.service

5、到/usr/lib/systemd/system路径下执行命令systemctl enable autoStart.service;

6、使用 systemctl is-enabled autoStart.service查看服务是否是自启,如果现实enabled则已添加为自启

7、重启shutdown -r now,重启之后使用命令systemctl status autoStart.service 查看服务启动情况,如果现实active(running)则表示自启成功,服务正在运行

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式