centos7设置java应用自启动
***************************************************************************** 方法一 *****************************************************************************
创建可执行的脚本文件
vi /ghzy/ghzy-hr/ghzy-hr_server_fwzn/start.sh
内容如下:
1#!/bin/bash
2export JAVA_HOME=/usr/local/jdk
3export PATH=$PATH:$JAVA_HOME/bin
4export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
5cd $(dirname $0)
6pid=$(ps -ef | grep 'ghzy-hr-service-1.0.0.jar' | grep -v grep | awk '{print $2}')
7if [ -n "$pid" ]; then
8 echo 'process id is: '$pid
9 kill -9 $pid
10 sleep 2s
11fi
12nohup java -jar ghzy-hr-service-1.0.0.jar --spring.profiles.active=prod >/dev/null &
赋予脚本执行权限
1chmod +x /ghzy/ghzy-hr/ghzy-hr_server_fwzn/start.sh
编辑/etc/rc.d/rc.local
vi /etc/rc.d/rc.local
在最后追加上面的可执行脚本:
1nohup /ghzy/ghzy-hr/ghzy-hr_server_fwzn/start.sh >/dev/null &
赋予/etc/rc.d/rc.local执行权限
1sudo chmod +x /etc/rc.d/rc.local
完成!!!
***************************************************************************** 方法二 *****************************************************************************
在 /etc/rc.d/init.d 目录下编写脚本 autostart.sh 脚本
vi /etc/rc.d/init.d/autostart.sh
内容如下:
1#!/bin/sh
2#chkconfig: 2345 80 90
3#description: 国航之翼开机自动启动的脚本程序
4
5nohup /usr/local/service/redis-2.8.3/src/redis-server --port 6379 &
脚本第一行 “#!/bin/sh” 告诉系统使用的shell;
脚本第二行 “#chkconfig: 2345 80 90”
2345表示启动等级:
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动
80 表示启动优先级,90表示停止优先级,优先级范围是0-100,数字越大,优先级越低。
脚本第三行 表示的是服务的描述信息
注意: 最上面三行必需
给脚本赋可执行权限
chmod +x /etc/rc.d/init.d/autostart.sh
添加成系统服务
chkconfig –add autostart.sh
设置为开机启动
chkconfig autostart.sh on
评论