ubuntu開機自動執行
開機自動執行的程式有2種類型
* xwindow登入後自動執行 ←白話一點說就是:進入桌面後才自動執行
* ubuntu開機後自動執行 ←白話一點說就是:系統一開機就自動執行
*xwindow登入後自動執行
系統→偏好設定→作業階段 的初始啟動程式頁籤,自行新增即可
*ubuntu開機後自動執行
有下列3種方式
* 直接編輯 /etc/init.d/rcS ,放在最後面
* 編寫script檔後,放到 /etc/init.d目錄下
* 使用update-rc.d 指令
如果在 /etc/init.d 中加入一個 script,例如lampp,當作服務來啟動
* 1.手動啟用
sudo /etc/init.d/lampp start
或是下列指令
sudo invoke-rc.d lampp start
* 2.手動關閉
/etc/init.d/lampp stop
或是下列指令
sudo invoke-rc.d lampp stop
使用update-rc.d 指令
若需要開機時自動執行該服務,則必須製作相關的 link(連結檔) 放在 /etc/rc*.d 中。
若你去 /etc/rc*.d 這些目錄底下看,會看到很多檔案,它的檔名是有含意的
K 開頭是 kill ,
S 開頭是 start ,
數字順序代表啟動的順序,
除了手動放置連結之外,利用 update-rc.d 也可很方便的幫我們完成這件事。
update-rc.d 指令會自動幫各個rc*.d目錄下建立link至/etc/init.d/下所指定的執行檔
例如: ln -s /home/user/backup/iptables.sh /etc/init.d/iptables.sh
上面這行指令的意思即是:我有一個 iptables.sh 檔放在 /home/user/backup 這個資料夾內,建立一連結檔放在 /etc/init.d/ 這資料夾內並命名為 iptables.sh
然後再下這行指令
update-rc.d -f iptables.sh defaults
則它就會自動的把iptables.sh放到各個 rc*.d 的目錄裡去,並設定好啟動順序
另一個update-rc.d使用範例介紹:
想要一開機就啟用在 init.d 中的某個 script 的符號連結的話,可執行下面的指令:(設定 vsftpd 一開機就執行)
update-rc.d -f vsftpd defaults
想要在 runlevel 1,2,3 時以 20 的 sequencing priority number (normal) 來執行 /etc/init.d/lampp ,而在 runlevel 4,5 停止的話,可執行下面指令: (範例中的句點不可省略喔)
update-rc.d vsftpd start 20 1 2 3 . stop 20 4 5 .
想要移除在 init.d 中的某個 script 的符號連結的話,可執行下面的指令: (移去 vsftpd 一開機就執行的狀態)
update-rc.d -f vsftpd remove
最後可以 rcconf 來觀看 update-rc.d 設定後的結果,若沒有安裝可執行下列指令安裝
sudo apt-get install rcconf
原文出處: https://wiki.ubuntu.com/TIPs_of_use_ubuntu