Linux开机执行指定shell

目的:希望linux在开机或重启后第一时间启动部分服务或者执行特定脚本

1.需要在/etc/init.d/目录下建立对应的shell脚本,示例如下: 开机启动docker-compose中的所有容器

vi /etc/init.d/kafka

#!/bin/bash
### BEGIN INIT INFO
# Provides: changwei.xiao
# Required-Start: $start 
# Required-Stop: $stop
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: kafka service
# Description: kafka service daemon
### END INIT INFO

docker-compose -f /root/docker/docker-compose.yml restart;

2.增加可执行权限

chmod +x /etc/init.d/kafka

3.查看默认执行级别   

runlevel
5  #这里表面本台电脑默认执行级别为 5

Linux有0~6共7个执行级别,不了解的同学赶紧了解下

 

4.在对应默认级别中建立软连接
ln -s /etc/init.d/kafka /etc/rc5.d/S01kafka

注意:S表示Start  K表示Kill  后面跟两位数字,数字越小越优先执行

 

另外为了防止出错,其实还有个建议,将需要执行的脚本放在/etc/rc.local中,系统在启动完成后最后会去执行里面的内容

posted @   肖哥哥  阅读(3133)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
生命不息  奋斗不止  每天进步一点点
点击右上角即可分享
微信分享提示