CentOS6.5 添加開機自啓動腳本

 

有時候咱們須要Linux系統在開機的時候自動加載某些腳本或系統服務。在解問題以前先來看看Linux的啓動流程。html

 

1、Linux的啓動流程

 

主要順序就是: 
1. 加載內核 
2. 啓動初始化進程 
3. 肯定運行級別 
4. 加載開機啓動程序 
5. 用戶登陸linux

啓動流程的具體細節能夠看看Linux 的啓動流程 
redis

第4步加載啓動程序實際上是兩步:shell

  1. init進程逐一加載開機啓動程序,其實就是運行指定目錄裏的啓動腳本。
  2. 在運行完指定目錄裏面的程序後init進程還會去執行/etc/rc.local 這個腳本。

ps:「指定目錄」是指在第3步中設置的運行級別對應的目錄。服務器

要完成咱們的需求,咱們使用第4步中的任意一種方式均可以。spa

下面分別就是這兩種方式的具體實現:.net

 

 

2、chkconfig

1. 編寫腳本autostart.sh(這裏以開機啓動redis服務爲例),腳本內容以下:命令行

#!/bin/sh
#chkconfig: 2345 80 90
#description:開機自動啓動的腳本程序

# 開啓redis服務 端口爲6379
/usr/local/service/redis-2.8.3/src/redis-server --port 6379 &

腳本第一行 「#!/bin/sh」 告訴系統使用的shell; 
腳本第二行 「#chkconfig: 2345 80 90」 表示在2/3/4/5運行級別啓動,啓動序號(S80),關閉序號(K90); 
腳本第三行 表示的是服務的描述信息code

注意: 第二行和第三行必寫,負責會出現如「服務 autostart.sh 不支持 chkconfig」這樣的錯誤。server

2. 將寫好的autostart.sh腳本移動到/etc/rc.d/init.d/目錄下

3. 給腳本賦可執行權限

cd /etc/rc.d/init.d/
chmod +x autostart.sh

4. 添加腳本到開機自動啓動項目中

chkconfig --add autostart.sh
chkconfig autostart.sh on

 

到這裏就設置完成了,咱們只須要重啓一下咱們的服務器,就能看到咱們配置的redis服務已經能夠開機自動啓動了。

 

 

3、修改/etc/rc.local腳本

末尾加入以下語句

/usr/local/service/redis-2.8.3/src/redis-server --port 6379 &

 

切忌 命令行末尾要加上 [  &  ] 符號(介紹), 表示任務在後臺執行。不然會阻塞後面添加的命令行執行。

 

 

完畢。

 

 

 

 

PS:

https://blog.csdn.net/karchar/article/details/52489572

https://blog.csdn.net/daidaineteasy/article/details/54864776

https://blog.csdn.net/chinabestchina/article/details/72686002

相關文章
相關標籤/搜索