centos7 开机延迟几分钟后自启动

1.使用场景

最近部署的一些项目,这些项目是在本地机房部署。像mysql、redis、nginx这些都可以把服务做到开机自启动,他们没有先后顺序,所以直接设置成开机自启动就可以了。但是我们自己写的服务,上面是需要等mysql、redis、nginx这些基础服务都启动后,才能启动的。

背景说明了,那我们如果去实现呢?

2.准备启动脚本

vi startup.sh


因为我的项目是javaweb,通过nohup守护进程的方式启动。内容如下:

#!/bin/bash
service mysql start
echo "pc端开始休眠"
sleep 60
nohup java -jar /data/mgcr_pc-0.0.1-SNAPSHOT.jar --spring.profiles.active=dlmx --server.port=8071 >/dev/null 2>pclog &
echo "设备端开始"
nohup java -jar /data/device/mgcr_device-0.0.1-SNAPSHOT.jar --spring.profiles.active=dlmx --server.port=82 >/dev/null 2>devicelog &
echo "微信端开始"
nohup java -jar /data/mgcr_wechat-0.0.1-SNAPSHOT.jar --spring.profiles.active=dlmx --server.port=8083 >/dev/null 2>weixinlog &
echo "小助手端"
nohup java -jar /data/mgcr_helper-0.0.1-SNAPSHOT.jar --spring.profiles.active=dlmx --server.port=8087 >/dev/null 2>log &


如何延迟启动,重点就是在脚本上使用sleep 60 的命令,这样相对让该进程睡眠60秒。需要注意一点,那就是脚本里如果有调用了另外一个脚本,这种嵌套关系,可能会有问题。

给脚本赋执行权限:

chmod +x startup.sh


3.把脚本加入/etc/rc.d/rc.local


3.1.确保权限

chmod +x /etc/rc.d/rc.local


3.2.编辑/etc/rc.d/rc.local文件
 

vi /etc/rc.d/rc.local

 

export JAVA_HOME=/usr/local/java/jdk1.8.0_281
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
nohup /datadrive/script/startup.sh &

 这里特别要注意:因为我们java的环境是后启动的。所以如果要运行javaweb项目,则需要把JDK的初始化配置文件在这里重新定义一下。

同时这里要注意一下,脚本的启动要使用nohup的方式。防止关闭窗口后,服务也自动关停。

查看启动的结果:

systemctl status rc-local


 4.重启服务器测试效果 

reboot

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Centos7中,有几种方法可以实现开机自启动。首先,可以在/etc/rc.local文件中添加自启动命令。这是一种常用的方法,只需要编辑该文件并添加需要自启动的命令即可。 另一种方法是在/etc/init.d目录下添加自启动脚本。首先,需要在/opt/script/目录下创建一个执行文件,比如auto_start.sh,然后将需要自启动的命令写入该文件中。接着,将该文件复制到/etc/init.d目录下,并修改文件权限为可执行。这样,在系统启动时,该脚本会自动执行。 除了上述方法,还可以使用/etc/fstab目录来实现开机自启动。这个目录主要用于存放系统初始化启动脚本,比如磁盘挂载等。将需要自启动的命令添加到该文件中即可。 总结来说,以上三种方法都可以实现Centos7开机自启动,只是执行的顺序有所不同。一般来说,最常用的是在/etc/rc.local文件中添加自启动命令。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Centos7开机自启动手册](https://blog.csdn.net/achenyuan/article/details/86541780)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Linux(CentOS7)开机自启动的三种是设置方式详细图解(init.d&fstab&rc.local)](https://blog.csdn.net/zhanhjxxx/article/details/122811638)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值