1. 程式人生 > >Ubuntu下新增開機啟動項的2種方法

Ubuntu下新增開機啟動項的2種方法

1、方法一,編輯rc.loacl指令碼

Ubuntu開機之後會執行/etc/rc.local檔案中的指令碼,
所以我們可以直接在/etc/rc.local中新增啟動指令碼。
當然要新增到語句:exit 0 前面才行。
如:

複製程式碼 程式碼如下: sudo vi /etc/rc.local
然後在 exit 0 前面新增好指令碼程式碼。

2、方法二,新增一個Ubuntu的開機啟動服務。

如果要新增為開機啟動執行的指令碼檔案,
可先將指令碼複製或者軟連線到/etc/init.d/目錄下,
然後用:update-rc.d xxx defaults NN命令(NN為啟動順序),
將指令碼新增到初始化執行的佇列中去。
注意如果指令碼需要用到網路,則NN需設定一個比較大的數字,如99。
1) 將你的啟動指令碼複製到 /etc/init.d目錄下
 以下假設你的指令碼檔名為 test。
2) 設定指令碼檔案的許可權

複製程式碼 程式碼如下: $ sudo chmod 755 /etc/init.d/test
3) 執行如下命令將指令碼放到啟動指令碼中去:

複製程式碼 程式碼如下: $ cd /etc/init.d
$ sudo update-rc.d test defaults 95
 注:其中數字95是指令碼啟動的順序號,按照自己的需要相應修改即可。在你有多個啟動指令碼,而它們之間又有先後啟動的依賴關係時你就知道這個數字的具體作用了。該命令的輸出資訊參考如下:

複製程式碼 程式碼如下: update-rc.d: warning: /etc/init.d/test missing LSB information
update-rc.d: see <http://wiki.debian.org/LSBInitScripts>
Adding system startup for /etc/init.d/test ...
/etc/rc0.d/K95test -> ../init.d/test
/etc/rc1.d/K95test -> ../init.d/test
/etc/rc6.d/K95test -> ../init.d/test
/etc/rc2.d/S95test -> ../init.d/test
/etc/rc3.d/S95test -> ../init.d/test
/etc/rc4.d/S95test -> ../init.d/test
/etc/rc5.d/S95test -> ../init.d/test
解除安裝啟動指令碼的方法:


複製程式碼 程式碼如下: $ cd /etc/init.d
$ sudo update-rc.d -f test remove
命令輸出的資訊參考如下:

複製程式碼 程式碼如下: Removing any system startup links for /etc/init.d/test ...
/etc/rc0.d/K95test
/etc/rc1.d/K95test
/etc/rc2.d/S95test
/etc/rc3.d/S95test
/etc/rc4.d/S95test
/etc/rc5.d/S95test
/etc/rc6.d/K95test