ubuntu 自啓動學習之自動啓動程序類型

一、Linux 系統啓動的步驟

Linux 系統主要啓動步驟:
1. 讀取 MBR 的信息,啓動 Boot Manager
Windows 使用 NTLDR 作爲 Boot Manager,如果您的系統中安裝多個
版本的 Windows,您就需要在 NTLDR 中選擇您要進入的系統。
Linux 通常使用功能強大,配置靈活的 GRUB 作爲 Boot Manager。
2. 加載系統內核,啓動 init 進程
init 進程是 Linux 的根進程,所有的系統進程都是它的子進程。
3. init 進程讀取 /etc/inittab 文件中的信息,並進入預設的運行級別,
按順序運行該運行級別對應文件夾下的腳本。腳本通常以 start 參數啓
動,並指向一個系統中的程序。
通常情況下, /etc/rcS.d/ 目錄下的啓動腳本首先被執行,然後是
/etc/rcN.d/ 目錄。例如您設定的運行級別爲 3,那麼它對應的啓動
目錄爲 /etc/rc3.d/ 。
4. 根據 /etc/rcS.d/ 文件夾中對應的腳本啓動 Xwindow 服務器 xorg
Xwindow 爲 Linux 下的圖形用戶界面系統。
5. 啓動登錄管理器,等待用戶登錄
Ubuntu 系統默認使用 GDM 作爲登錄管理器,您在登錄管理器界面中
輸入用戶名和密碼後,便可以登錄系統。(您可以在 /etc/rc3.d/
文件夾中找到一個名爲 S13gdm 的鏈接)

二、Linux 自動啓動程序類型

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”,運行“crontab cronFile”命令後,每當元月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。?9 12:00
2000-11-09 12:00時候自動發一標題爲“Have a lunch”,內容爲plan.txt文件內容的郵件給Roger。er。ger。er。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章