Ubuntu添加開機自動啓動程序的方法

一、Ubuntu添加開機自動啓動程序的方法
1. 開機啓動時自動運行程序
Linux加載後, 它將初始化硬件和設備驅動, 然後運行第一個進程init。init根據配置文件繼續引導過程,啓動其它進程。通常情況下,修改放置在
/etc/rc或
/etc/rc.d 或
/etc/rc?.d
目錄下的腳本文件,可以使init自動啓動其它程序。例如:編輯/etc/rc.d/rc.local 文件(該文件通常是系統最後啓動的腳本),在文件最末加上一行“xinit”或“startx”,可以在開機啓動後直接進入X-Window。
2. 登錄時自動運行程序
用戶登錄時,bash先自動執行系統管理員建立的全局登錄script :
/ect/profile
然後bash在用戶起始目錄下按順序查找三個特殊文件中的一個:
/.bash_profile、
/.bash_login、
/.profile,
但只執行最先找到的一個。因此,只需根據實際需要在上述文件中加入命令就可以實現用戶登錄時自動運行某些程序(類似於DOS下的Autoexec.bat)。
3. 退出登錄時自動運行程序
退出登錄時,bash自動執行個人的退出登錄腳本
/.bash_logout。
例如,在/.bash_logout中加入命令“tar -cvzf c.source.tgz *.c”,則在每次退出登錄時自動執行 “tar” 命令備份 *.c 文件。
4. 定期自動運行程序
Linux有一個稱爲crond的守護程序,主要功能是週期性地檢查 /var/spool/cron目錄下的一組命令文件的內容,並在設定的時間執行這些文件中的命令。用戶可以通過crontab 命令來建立、修改、刪除這些命令文件。
例如,建立文件crondFile,內容爲“00 9 23 Jan * HappyBirthday”,運行“crontabcronFile”命令後,每當元月23日上午9:00系統自動執行“HappyBirthday”的程序(“*”表示不管當天是星期幾)。
5. 定時自動運行程序一次
定時執行命令at 與crond 類似(但它只執行一次):命令在給定的時間執行,但不自動重複。at命令的一般格式爲:at [ -f file ] time ,在指定的時間執行file文件中所給出的所有命令。也可直接從鍵盤輸入命令:
$ at 12:00
at>mailto Roger -s ″Have a lunch″ < plan.txt
at>Ctr-D
Job 1 at 2000-11-09 12:00
2000-11-09 12:00時候自動發一標題爲“Have a lunch”,內容爲plan.txt文件內容的郵件給Roger.




Ubuntu下添加開機啓動腳本
Ubuntu開機之後會執行/etc/rc.local文件中的腳本,所以我們可以直接在/etc/rc.local中添加啓動腳本。
當然要添加到語句:exit 0 前面才行。
如:
sudo vi /etc/rc.local
然後在 exit 0 前面添加好腳本代碼。
後續有空再研究下添加一個Ubuntu的開機啓動服務看看。
如果要添加爲開機啓動執行的腳本文件,可先將腳本複製或者軟連接到/etc/init.d/目錄下,然後用:update-rc.d xxx defaults NN命令(NN爲啓動順序),將腳本添加到初始化執行的隊列中去。
注意如果腳本需要用到網絡,則NN需設置一個比較大的數字,如98 。




二、ubuntu下設置程序開機自啓動的幾種方法


1、方法一:
這種也是最常用的一種 rcconf:
sudo apt-get install rcconf
root下運行: rcconf
功能更全的:sysv-rc-conf
sudo apt-get install sysv-rc-conf
運行:sysv-rc-conf
這個改起來很簡單,自己試一下就知道了.


2、方法二:
直接改/etc/rc0.d ~ /etc/rc6.d和/etc/rcS.d下的東西,S開頭的表示啓動,K開頭的表示不啓動,例如:想關閉vsftpd的開機自動啓動,只需sudo mv /etc/rc2.d/S20vsftpd /etc/rc2.d/K20vsftpd就可以了。 
這條命令的用意就是利用mv的重命名功能。


3、方法三:
chkconfig,這種方法在redhat,Debian裏面比較常用,在fedora和ubuntu裏面用方法1比較簡單,但是學習一下這種方法也是不錯的。
但在ubuntu下這個命令沒有redhat好用,老是出錯.
算了,還是直接看一下redhat裏面chkconfig的用法吧.
(1)chkconfig --level [0123456] [service name] [on|off]
   chkconfig --level 23 dhcp3-server off ----設定dhcp server服務在level2,3下關閉.
(2)chkconfig --list 查看服務的自動開啓狀態
(3)chkconfig --add 增加一個服務給chkconfig來管理,但是該服務必須在/etc/init.d內。
發佈了307 篇原創文章 · 獲贊 52 · 訪問量 98萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章