目录
- 第一步:编写sh脚本
- 第二步:修改脚本的可执行权限
- 第三步:建立服务
- 第四步:新增服务的可执行权限:
- 第五步:执行一下命令
上篇玩儿转Linux || 16 集群机器之间文件互传 讲解了linux的应用:在机器机器之间实现文件互传的指令xsync指令自定义
。本文介绍如何将java应用以服务的形式部署并设置为开机自启动。
如果您觉得对您有帮助的话,不要忘记帮助帮博主一键三连
😊哦
第一步:编写sh脚本
在/usr/local/src/shs/stressTest
目录下,新建两个脚本,start.sh和stop.sh。这里的目录没有要求。
- start.sh
#!/bin/sh
source /etc/profile
export PATH=$JAVA_HOME/bin:$PATH
#程序名
RUN_NAME="renren-fast.jar"
# jar 位置
JAVA_OPTS=/usr/local/src/java/project/renren-fast.jar # jar包的位置。
LOG_OPTS=/usr/local/src/java/project/stressTest.log # 你的日志文件存放的位置。
nohup java -jar $JAVA_OPTS >$LOG_OPTS 2>&1 & # 启动脚本
echo "$RUN_NAME started success."
echo $! > /var/run/stressTest.pid
记住,一定要加上source /etc/profile,巨坑,不然,提示找不到java命令
- stop.sh
#!/bin/sh
source /etc/profile
PID=$(cat /var/run/stressTest.pid)
kill -9 $PID
第二步:修改脚本的可执行权限
chmod +x start.sh
chmod +x stop.sh
第三步:建立服务
进入/etc/systemd/system目录,新建stressTest.service服务(stressTest是服务名)
[Unit]
Description=压测平台demo
after=network.target
[Service]
User=root
Group=root
Type=forking
KillMode=process
ExecStart=/bin/sh /usr/local/src/shs/stressTest/start.sh start
PrivateTmp=true
[Install]
WantedBy=multi-user.target
[Service]
User=root
Group=root
Type=forking
KillMode=process
ExecStart=/bin/sh /usr/local/src/shs/stressTest/start.sh start
PrivateTmp=true
[Install]
WantedBy=multi-user.target
第四步:新增服务的可执行权限:
chmod +x stressTest.service
第五步:执行一下命令
systemctl daemon-reload:重新加载某个服务的配置文件,如果新安装了一个服务,归属于 systemctl 管理,要是新服务的服务程序配置文件生效,需重新加载。
systemctl enable hello-service.service #添加开机启动服务
systemctl start hello-service.service # 启动服务
systemctl stop hello-service.service #关闭服务
systemctl restart hello-service.service # 重启服务
systemctl status hello-service.service #查看服务状态
systemctl disable hello-service.service #取消开机启动
最后,如果您觉得对您有帮助的话,不要忘记帮助帮博主一键三连
😊哦