OpenWRT的啟動腳本放在 /etc/init.d 目錄下,而系統開機時自動運行/etc/rc.d目錄下的腳本。所以在rc.d目錄下、有init.d下腳本的鏈接文件。源碼中init.d位置在:/package/base-files/files/etc/init.d
vi package/base-files/files/etc/init.d
然后,我們加入自己的腳本,實現模塊驅動的加載、應用程序的開機自啟動等。 首先在/package/base-files/files/etc/init.d里添加需要啟動的shell腳本
vi package/base-files/files/etc/init.d/fscar
設置權限
chmod 777 package/base-files/files/etc/init.d/fscar
注:關于mjpg_streamer與ser2net啟動參數請查看下面章節。
之后還需要在rc.d目錄下做一個鏈接,啟動時系統會按順序啟動rc.d目錄下的腳本鏈接,對應執行init.d目錄下的啟動腳本。腳本的命名要符合系統規范,init.d下telnet腳本在rc.d(沒有的話自建一個)目錄下的鏈接文件名為S50telnet。所以鏈接文件要在腳本名前加S+啟動順序數字,啟動順序要等系統進行完必要的初始化。所以我們命名為S95+腳本名。
命令:ln -s /etc/init.d/fscar /etc/rc.d/s80fscar
現在實現了應用程序的開機自啟動。