1. 我們首先來看一下Linux系統開機啟動過程:
Ubuntu是Linux系統的衍生系統,其開機啟動過程與上圖相差不大,但是隨着系統的不斷發展,終究還是有不同的地方,下面,我們來了解一下Ubuntu12.10系統的自啟動過程。
2. linux 啟動時第一個進程是/sbin/init,其主要功能就是軟件執行環境,包括系統的主機名、網絡設置、語系處理、文件系統格式及其他服務的啟動等。
其配置文件就是/etc/inittab,但在我的ubuntu12.10卻沒有找到此文件。
原來ubuntu中使用/etc/event.d這個目錄,完成相似的功能。
ubuntu9.10版本的upstart不再用/etc/event.d這個目錄了。而是改用/etc/init目錄。在/etc/init/下發現一個文件rc-sysinit.conf,與rc.sysinit文件名相似,於是打開發現其中有如下內容:
很明顯,在ubuntu還是支持/etc/initab文件的。腳本的最后會執行/etc/init.d/rcS, rcS的內容為:
最后一個語句:exec /etc/init.d/rc S
這也就是說,S作為一個阿拉伯數字/數字,並按照/etc/init.d/rc*的順序執行!
3. /ect/init.d/rc.local 文件
這是使用者自訂開機啟動程序,把需要開機自動運行的程序寫在這個腳本里。
也就是說,我有任何想要在開機時就進行的工作時,直接將他寫入 /etc/rc.local , 那么該工作就會在開機的時候自動被載入喔!而不必等我們登入系統去啟動呢! 是否很方便啊!一般來說,鳥哥就很喜歡把自己制作的 shell script 完整檔名寫入 /etc/rc.d/rc.local ,如此一來,開機就會將我的 shell script 執行過,真是好棒那!