目的:希望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
N 5 #這里表面本台電腦默認執行級別為 5
Linux有0~6共7個執行級別,不了解的同學趕緊了解下
4.在對應默認級別中建立軟連接
ln -s /etc/init.d/kafka /etc/rc5.d/S01kafka
注意:S表示Start K表示Kill 后面跟兩位數字,數字越小越優先執行
另外為了防止出錯,其實還有個建議,將需要執行的腳本放在/etc/rc.local中,系統在啟動完成后最后會去執行里面的內容