centos开机启动自动启动执行shell脚本


背景

CentOS开机时自动启动应用程序,比如jar包

实现

1. 首先得先准备好程序启动用的shell脚本,

/usr/local/test/app-test.sh,

并且要执行chomd +x app-test.sh 该改为可执行文件

2. 进入/etc/rc.d/init.d 目录

cd /etc/rc.d/init.d

3. 再生成一个服务运行shell脚本 service-test,

并且要执行chomd +x app-test.sh 改为可执行文件

#!/bin/sh
#chkconfig:2345 80 90
#description: 描述
source /etc/profile
cd /usr/local/test
./app-test.sh

#!/bin/sh以shell脚本方式执行

source /etc/profile一般配置的java环境变量在启动时会失效,所以得有这刷新一下环境变量

#chkconfig:2345 80 90

2345指定脚本运行级别,对应系统的系统初始化启动服务目录 /etc/rc.d下的rc2.d,rc3.d,rc4.d,rc5.d

80为启动序号(数字越小执行顺序越靠前),例如等同于在rc2.d目录下手动创建S80service-test服务

90为关闭序号(数字越小执行顺序越靠前)

4. 启动服务shell脚本准备好以后,执行chkconfig --add service-test 添加服务到系统中

chkconfig --add service-test

5. chkconfig --list 可以查看所有的启动服务

chkconfig --list

6. chkconfig service-test on 可以启动服务,一般添加服务的时候已经启动过了,不用再特意执行此命令


7. 然后可以先手动执行./service-test看看,应用是否正常启动


8. 最后reboot重启服务器,并查看开机后应用是否正常启动


注意点

脚本命令里如果有涉及lsof命令,需要安装执行 yum install lsof ,根据提示再輸入y进行下载安装

————————————————

版权声明:本文为CSDN博主「Quan7er」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/ymq267/article/details/121234451