Professional Documents
Culture Documents
系統啟動流程
這一章,純粹為您介紹一些理論。本章將要為您介紹,從打開電源到使用者可以登入
系統這段期間,Red Hat Enterprise Linux 與 Fedora Core Linux 到底作了哪些事情。有
了本章的基礎,您就可以:
4.1 主要的啟動流程
從打開電腦的電源,開始啟動 Red Hat Enterprise Linux 或 Fedora Core Linux 系統,到
使用者可以登入為止,共歷經了以下幾個階段:
1
Linux 系統管理寶典
主要階段
rc.sysinit
初始化系統環境
rc
rc.local
建立使用環境
完成
• 初始化 BIOS
• 執行啟動載入器
• 載入核心
• 啟動 init 服務
4.1.1 BIOS
當您一打開電腦的電源,電腦會先去啟動 BIOS。BIOS 啟動後,會去執行以下的工
作:
2
第 4 章 系統啟動流程
• 偵測所有周邊設備:首先,BIOS 會先去偵測所有的周邊設備,像是電腦安裝了哪
一種顯示卡、記憶體的數量、安裝了哪些磁碟、...等等。BIOS 偵測周邊設備的目
的,是未來可以把周邊設備的資訊提供給作業系統使用。
4.1.2 啟動載入器
BIOS 找到啟動磁碟後,接下來就是要啟動磁碟中的作業系統。BIOS 會試著依照下面
的順序找出啟動磁區 (Boot Sector),並執行位於啟動磁區前 446 個位元組空間中的作
業系統:
2. 如果主要啟動磁區中沒有儲存作業系統,再尋找磁碟中標註為啟動分割區 (Boot
Partition) 之分割區的第一個磁區中的作業系統
不管是主要啟動紀錄磁區,或者是啟動分割區中的第一個磁區,儲存作業系統的空間
都只有 446 個位元組。但很遺憾的,目前作業系統都無法濃縮到可以擠在 446 個位元
組的磁區裡。如果沒有辦法在上面提到的磁區中儲存作業系統的核心,那麼,就會造
成 BIOS 無法繼續啟動的工作。
3
Linux 系統管理寶典
4
第 4 章 系統啟動流程
4.1.3 啟動核心
當 BIOS 順利的執行啟動載入器後,啟動載入器會去尋找儲存於其他磁區中的作業系
統,然後啟動這個作業系統。
Linux 核心啟動後,會執行下面幾項工作:
偵測所有硬體設備
5
Linux 系統管理寶典
驅動硬體設備
接著 Linux 核心便會試著去驅動電腦的硬體設備。
那其他那些核心影像檔中沒有提供驅動程式的硬體設備怎麼辦?? 不用著急,Linux 會
等到掛載根目錄檔案系統後,再逐一試著安裝尚未驅動的裝置之驅動程式。
以唯讀的方式掛載根檔案系統
• /etc/:儲存著重要的設定檔
• /bin/:儲存著常用且開機時必須用到的執行檔
• /sbin/:這個目錄儲存著開機過程中所需的系統執行檔
33
"必要",指的是靜態驅動程式可以驅動的硬體設備。
6
第 4 章 系統啟動流程
• /dev/:儲存著裝置檔案
由於這五個目錄儲存著開機所需的各項工具、設定檔、程式庫,所以這五個目錄必須
儲存在 Linux 的根檔案系統上。如果這五個目錄不在根檔案系統上,會造成 Linux 開
機過程會失敗,而無法順利的啟動 Linux。除了這五個目錄外,其他的目錄,像是
/usr/、/var/、/home/、/tmp/、...等等,都可以儲存在其他的檔案系統中。
再次提醒您,/etc/、/bin/、/sbin/、/lib/、/dev/ 五大目錄必須儲
存在根檔案系統上,缺一不可。
掛載根檔案系統的目的是為了:
• 安裝適當的核心模組,以便驅動某些硬體裝置或啟用某些功能
• 啟動儲存於根檔案系統中的 init 服務,以便讓 init 服務接手後續的啟動工作
也許您會好奇:Linux 核心怎麼知道根檔案系統是哪一個呢??
7
Linux 系統管理寶典
啟動 init 服務
2. /etc/init
3. /bin/init
4. 如果都找不到,最後就執行 /bin/sh
8
第 4 章 系統啟動流程
4.1.4 執行 init 服務
啟動 init 服務的目的,是讓 init 服務來初始化 Linux 的系統環境。init 開始啟動
後,就代表 Linux 已經順利的啟動了 Linux 的核心,接著就由 init 服務來建立 Linux
的使用環境;整個系統啟動工作,就進入到另外一個階段 — 初始化系統環境。
我想,會這樣設計的主要的原因不外乎:
9
Linux 系統管理寶典
4.2 初始化系統環境
啟動 init 服務時,init 服務會讀取 /etc/inittab 檔案,根據 /etc/inittab
中的設定資料34,進行初始化系統環境的工作。/etc/inittab 定義 init 服務在
Linux 啟動過程中必須依序執行下面幾個 Script:
• /etc/rc.d/rc.sysinit
• /etc/rc.d/rc
34
當然,您也可以自行修改 /etc/inittab 中的設定,關於如何設定 inittab,請參閱 4.4, "管理 i
nit 服務"。
10
第 4 章 系統啟動流程
• /etc/rc.d/rc.local
4.2.1 /etc/rc.d/rc.sysinit
/etc/rc.d/rc.sysinit 主要的功能用來建置系統的基本環境。當 init 服務執行
rc.sysinit 時 (如圖 4.5 "Linux 執行 rc.sysinit 的畫面"),會執行下面幾項工
作:
11
Linux 系統管理寶典
設定核心參數
rc.sysinit 會執行 sysctl -p,以便從 /etc/sysctl.conf 設定 Linux 的
核心參數 (Kernel Parameter)。
設定系統時間
rc.sysinit 會將硬體時間,設定成為 Linux 的系統時間。
載入鍵盤對應表
為了能讓您可以使用各式各樣的鍵盤,rc.sysinit 也會去載入鍵盤對應表,以
便讓您可以正確的輸入文字、符號。
啟用置換記憶體空間
rc.sysinit 會執行 swapon -a -e 指令,以便根據 /etc/fstab 的設定,啟
用所有的置換記憶體空間。至於置換記憶體的介紹,請參閱 3.5, "置換記憶體的
管理"。
設定主機名稱
rc.sysinit 會根據 /etc/sysconfig/network 的 HOSTNAME 參數,設定
Linux 的主機名稱。
檢查並掛載所有檔案系統
rc.sysinit 會去檢查所有需要掛載的檔案系統,以確保這些檔案系統的完整
性。檢查完畢後,rc.sysinit 就會去掛載所有檔案系統,並且變更根檔案系統
(Root Filesystem) 的掛載參數成為可讀可寫 (Read-Write),以便讓我們可以在根檔
案系統上寫入資料。
初始化硬體設備
Linux 除了在啟動核心時,會以靜態驅動程式 (Static Driver) 驅動部分的硬體外,
在執行 rc.sysinit 時,也會試著驅動剩餘的硬體設備。rc.sysinit 驅動的
硬體設備包含:
12
第 4 章 系統啟動流程
• USB 設備
啟用軟體磁碟陣列與 LVM
rc.sysinit 也會去啟用所有的軟體磁碟陣列,以及 LVM 的磁碟設備。
如有必要,卸載 /initrd/
/initrd/ 用來掛載核心的初始化記憶體磁碟 (initrd, Initial RAM Disk) 的資料,
Linux 可以透過初始化記憶體磁碟來載入必要的驅動程式,這樣才能讓 Linux 能在
開機前先驅動所需的設備,進而順利進行啟動的工作。
初始化序列埠設備
init 服務會管理所有的序列埠 (Serial Port) 的設備,像是您的數據機、不斷電系
統、序列埠主控台 (Serial Console)、...等等。init 服務則是透過 rc.sysinit
來初始化 Linux 的序列埠設備。當 rc.sysinit 發現您的 Linux 存在35著 /etc/r
c.serial 時,才會執行 /etc/rc.serial,藉以來初始化所有的序列埠設備。
因此,您可以在 /etc/rc.serial 中定義如何初始化 Linux 所有的序列埠設備。
清除老舊的鎖定檔與 IPC 檔
為了確保稍後能夠正確的啟動所有的服務,rc.sysinit 必須要先清楚老舊鎖定
檔 (Stale Lock File) 與 IPC 檔。
35
預設 Linux 不提供 /etc/rc.serial,如有需要,請自行建立。
13
Linux 系統管理寶典
什麼是老舊的鎖定檔??
有時候,某些服務為了確保同時間只能執行有一個實體 (Instance),通常
會用下面的方法達成這個目的:
如此一來,就可以避免同時間有多個行程實體執行著。
那麼,為什麼需要在開機過程中清除這些鎖定檔呢??
您的 Linux 很有可能是因為不正常關機36而重新啟動的。在不正常關機
的那一剎那,服務來不及刪除這些鎖定檔;在重新開機時,鎖定檔仍保
留在磁碟上,這樣就會造成 Linux 啟動服務時發現鎖定檔已經存在,而
無法順利的啟動。
為了避免這種情況導致系統無法順利啟動所需的服務,所以在啟動過程
中,Linux 會強迫清除所有殘留下來的老舊鎖定檔,以確保所有的服務
都能正常的啟動!!
重新設定磁碟參數
rc.sysinit 最後一項工作,則是根據 /etc/sysconfig/harddiskDEVICE
設定檔,重新設定該 DEVICE 裝置的磁碟參數 (Disk Parameter)。
36
像是突然失去電力、Linux 當機、...。
14
第 4 章 系統啟動流程
4.2.2 /etc/rc.d/rc
/etc/rc.d/rc 這個 Script 則是用來建置 Runlevel 的環境37。
37
關於 Runlevel 詳細的介紹,請參閱 4.3, "Runlevel"。
15
Linux 系統管理寶典
4.2.3 /etc/rc.d/rc.local
如果您打算在 Linux 系統啟動的過程中,去執行某些工作,該怎麼處理??
16
第 4 章 系統啟動流程
login:
其中的 \r 與 \m,會自動轉成核心的版本與平台的名稱。如果您想要更改登
入的歡迎畫面,就可以更改 /etc/issue 的內容,當下次重新啟動 Linux
就可以產生新的登入歡迎畫面。
17
Linux 系統管理寶典
4.2.4 建立使用者介面
在執行完三個主要的 RC Script 後,init 服務的最後一個工作,就是用來建立 Linux
的使用者介面 (User Interface),好讓使用者可以使用 Linux。此時 init 會執行以下兩
項工作:
建立虛擬主控台
init 會在若干個虛擬主控台 (Virtual Console) 中,執行 /bin/login,以提供使
用者可以從虛擬主控台登入 Linux。Linux 預設會在前六個虛擬主控台,也就是
tty1 ~ tty6,執行 /bin/login 登入程式。
建立圖形使用介面的登入程式
如果您的系統預設要進入 Runlevel 5,那麼就會啟動 X Window System 藉以提供
一個圖形化的使用介面的登入程式 (如圖 4.7 "Linux 提供的圖形使用介面的登入畫
面"),以便讓使用者可以登入 Linux。
18
第 4 章 系統啟動流程
等 init 建立完所有的虛擬主控台以及圖形化登入環境後,使用者就可以利用虛擬主
控台或圖形化的登入程式,來登入並使用 Linux 了。當您看到登入的畫面時,就代表
Linux 已經跑完所有啟動流程,整個啟動工作已大功告成!!
4.3 Runlevel
執行等級 (Runlevel) 定義了不同軟體執行的組合,Linux 透過 Runlevel 來定義不同的
環境下,要執行哪些程式。
19
Linux 系統管理寶典
Runlevel 0
Runlevel 0 代表 Linux 要開始關閉 (Shutdown) 了!! 當 Linux 切換 Runlevel 0 時,會
進行下面的工作:
• 關閉所有可登入的虛擬主控台 (VC, Virtual Console),以強迫所有使用者登出
系統
• 結束所有啟動的服務
• 卸載所有檔案系統
• 停止所有的周邊設備
Runlevel 1
當 Linux 切換到 Runlevel 1 環境時,會執行下面的動作:
• 關閉所有可登入的虛擬主控台
• 關閉網路
• 關閉大部分的服務與應用程式
• 直接以 root 身份開啟一個虛擬主控台,並且執行 Shell 程式
由於此時沒有任何使用者可以透過網路、或者本機的虛擬主控台,甚至 X Window
System 可以登入 Linux 系統,只有 root 可以直接使用整個 Linux 系統,因此 Run-
level 1 也被稱為 "單人模式 (Single User Mode)"。
20
第 4 章 系統啟動流程
簡單來說,如果您希望擁有一個完全不受干擾的環境,來管理您的 Li-
nux,此時您就可以考慮進入 Runlevel 1。
例如,如果您打算要卸載檔案系統,可是仍有人正在使用這個檔案系統,
雖然您可以使用 fuser 強迫中止相關的行程,但這樣很容易造成使用者
資料遺失的問題發生。此時您可以先讓 Linux 進入 Runlevel 1,然後再來
進行卸載磁碟的工作,就可以減少可能造成的損失。
Runlevel 2
在 Runlevel 2 環境,Linux 會啟動網路,以及大部分的網路服務,並開啟所有的主
控台,允許本機使用者 (Local User) 可以登入 Linux。但是 Runlevel 2 不允許網域
使用者 (Domain User) 登入您的 Linux,所以,Runlevel 2 不會啟動網域功能的伺
服器或用戶端服務38。
Runlevel 3
當 Linux 切換成為 Runlevel 3 環境時,會執行下面的工作:
• 開啟可登入的虛擬主控台,啟用本機帳號與網域帳號
• 開啟網路連線
• 啟動所需的網路服務
38
像是 NIS、NFS、LDAP、...等提供網域功能的服務。
21
Linux 系統管理寶典
Runlevel 4
目前的 Runlevel 4 被定義為保留 (Reserved),您可以自行定義 Runlevel 4 要執行或
停止哪些服務,或者 Runlevel 4 的環境。如果沒有定義的話,進入 Runlevel 4 時,
Linux 將保有原本的環境狀態,不會變更任何資訊。
Runlevel 5
Runlevel 5 相當等於 Runlevel 3 加上圖形模式;也就是說當 Linux 進入 Runlevel 5
時,會執行與 Runlevel 3 相同的工作,完成後再啟動 X Window System 的顯示管
理員 (DM, Display Manager),讓使用者可以使用 X Window System 登入 Linux。
Runlevel 6
Runlevel 6 代表著 Linux 要重新啟動 (Reboot),當切換至 Runlevel 6 時,Linux 會
先執行與 Runlevel 1 相同的工作;但與 Runlevel 1 不同的地方,Runlevel 6 完成關
閉系統工作後,會通知 BIOS 重置 (Reset) 整個系統,就像是您按下電腦面版上的
重置按鈕一樣,以便重新啟動 Linux。
22
第 4 章 系統啟動流程
Runlevel 0 關機 無 ✗ ✗
Runlevel 6 重新開機 無 ✗ ✗
範例 4.1. 查詢 Runlevel
[root@linux ~]# runlevel
N ❶ 5 ❷
[root@linux ~]#
❶ 這是先前的 Runlevel。
❷ 這是目前的 Runlevel。
23
Linux 系統管理寶典
39
關於如何在啟動載入器中指定 Linux 啟動後要進入哪個 Runlevel,請參閱 4.5, "管理啟動載入器"。
24
第 4 章 系統啟動流程
然而,這些啟動、停止服務會產生的一些訊息,而這些訊息可能會干擾前景 (Fore-
ground) 的操作 (如 圖 4.8 "切換 Runlevel 時延遲的畫面"),讓您誤以為無法繼續輸
入其他的指令!! 事實上,您的 Shell 仍然接受您輸入其他的指令,因此您可以完全
不用理會畫面上的狀況。
25
Linux 系統管理寶典
4.4 管理 init 服務
init 服務是 Linux 中重要的服務之一,如果您要深入掌握 Linux,您就有必要深入研
究 init 服務的管理方法。
此外,init 服務還具備下面幾項特色:
26
第 4 章 系統啟動流程
4.4.2 組態 init 服務
與 Linux 其他服務一樣,init 服務也有自己的設定檔。init 服務的設定檔是 /etc/i
nittab。以下是我的 /etc/inittab 檔案內容:
1 #
2 # inittab This file describes how the INIT process should set up
3 # the system in a certain run-level.
4 #
5 # Author: Miquel van Smoorenburg, <miquels@drinkel.nl.mugnet.org>
6 # Modified for RHS Linux by Marc Ewing and Donnie Barnes
7 #
8
9 # Default runlevel. The runlevels used by RHS are:
10 # 0 - halt (Do NOT set initdefault to this)
11 # 1 - Single user mode
12 # 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
13 # 3 - Full multiuser mode
14 # 4 - unused
15 # 5 - X11
16 # 6 - reboot (Do NOT set initdefault to this)
17 #
18 id:5:initdefault:
19
20 # System initialization.
21 si::sysinit:/etc/rc.d/rc.sysinit
22
23 l0:0:wait:/etc/rc.d/rc 0
24 l1:1:wait:/etc/rc.d/rc 1
25 l2:2:wait:/etc/rc.d/rc 2
26 l3:3:wait:/etc/rc.d/rc 3
27 l4:4:wait:/etc/rc.d/rc 4
28 l5:5:wait:/etc/rc.d/rc 5
29 l6:6:wait:/etc/rc.d/rc 6
30
31 # Trap CTRL-ALT-DELETE
32 ca::ctrlaltdel:/sbin/shutdown -t3 -r now
27
Linux 系統管理寶典
33
34 # When our UPS tells us power has failed, assume we have a few minutes
35 # of power left. Schedule a shutdown for 2 minutes from now.
36 # This does, of course, assume you have powerd installed and your
37 # UPS connected and working correctly.
38 pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"
39
40 # If power was restored before the shutdown kicked in, cancel it.
41 pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"
42
43 # Run gettys in standard runlevels
44 1:2345:respawn:/sbin/mingetty tty1
45 2:2345:respawn:/sbin/mingetty tty2
46 3:2345:respawn:/sbin/mingetty tty3
47 4:2345:respawn:/sbin/mingetty tty4
48 5:2345:respawn:/sbin/mingetty tty5
49 6:2345:respawn:/sbin/mingetty tty6
50
51 # Run xdm in runlevel 5
52 x:5:respawn:/etc/X11/prefdm -nodaemon
每一個欄位的說明如下:
欄位 說明
PROCESS 要執行的程式檔案,這個欄位中定義的程式名稱必須是絕對路徑。
28
第 4 章 系統啟動流程
參數 說明
pf 電源失效時要執行的工作。
pr 電源恢復時要執行的工作。
29
Linux 系統管理寶典
4.5 管理啟動載入器
與 Linux 啟動關係密切的,就是啟動載入器。啟動載入器用來載入作業系統核心,並
且傳遞一些核心啟動參數 (Kernel Boot Parameter) 給作業系統。
啟動載入器若是設定錯誤,可能會造成無法順利啟動您的 Linux,因此,在本節中,
將為您介紹如何使用與管理啟動載入器。
30
第 4 章 系統啟動流程
LILO
LILO (Linux Loader),是為 Linux 作業系統量身打造的啟動載入器,也是 Linux 作
業系統標準的啟動載入器,幾乎各種 Linux 發行套件 (Distribution) 產品,都會提
供 LILO 這個啟動載入器軟體,Red Hat Enterprise Linux 與 Fedora Core Linux 當
然也不例外。
LILO 具備下面幾項特性:
GRUB
GRUB 是 GNU 計畫的一項成品。GRUB 設計的目標,是作為 GNU 作業系統的啟
動載入器,並且支援啟動各種40作業系統。
GRUB 具備下面幾項特性:
• 修改過設定檔後,無須重新安裝:LILO 是在安裝時,依據設定檔的組態,產
生新的 LILO,因此修改過 LILO 的設定,必須重新安裝 LILO 才能讓 LILO
40
當然也包含 Linux。
31
Linux 系統管理寶典
32
第 4 章 系統啟動流程
4.5.2 使用 LILO
如果您的 Linux 安裝的是 LILO,當啟動 Linux 時,將看到如 圖 4.9 "LILO 執行的畫
面" 的畫面。在 LILO 的畫面中,會顯示可以使用 LILO 來啟動的作業系統標籤名稱
(Label Name) 清單。作業系統的標籤名稱是在設定 LILO 時決定的,用來代表電腦中
的某一個作業系統之識別名稱。
變更 Linux 啟動參數
41
至於預設的作業系統是哪一個,端看 LILO 中的設定。
33
Linux 系統管理寶典
4.5.3 組態 LILO
如果您打算變更 LILO 的設定,舉凡像是作業系統的標籤名稱、預設的作業系統、…
等,就得重新組態 LILO 的設定檔。
34
第 4 章 系統啟動流程
/etc/lilo.conf 包含兩部分的設定:
• 作業系統參數:用來組態某一個作業系統如何啟動的設定資料,像是作業系統的
核心檔案、作業系統的標籤名稱 (Label Name)、...。
作業系統參數
35
Linux 系統管理寶典
啟動 Linux 作業系統的參數
參數 說明
36
第 4 章 系統啟動流程
全域參數
參數 說明
timeout=SECONDS 逾時的秒數。
default=LABEL 預設啟動的作業系統標籤名稱。
42
不管是 Linux 作業系統,還是其他的作業系統。
37
Linux 系統管理寶典
參數 說明
4.5.4 安裝 LILO
有兩種情況,您必須要重新安裝 LILO:
38
第 4 章 系統啟動流程
範例 4.4. 安裝 LILO
[root@linux ~]# lilo -v
LILO version 21.4-4, Copyright (C) 1992-1998 Werner Almesberger
'lba32' extensions Copyright (C) 1999,2000 John Coffman
43
像是核心影像檔 (Kernel Image)、初始化記憶體磁碟 (Initial RAM Disk)、...等等。
39
Linux 系統管理寶典
4.5.6 使用 GRUB
當您使用 GRUB 作為系統的啟動載入器,啟動 Linux 時,將看到如 圖 4.11 "GRUB 啟動
畫面" 的畫面。
GRUB 預設會倒數五秒後,自動啟動預設的作業系統;如果您要啟動非預設的作業系
統,一定要在這個畫面中按下任一鍵,才能中止 GRUB 的倒數計時。
40
第 4 章 系統啟動流程
更改啟動參數
41
Linux 系統管理寶典
按鍵 說明
e 編輯選擇的作業系統之設定值。
使用 e 按鍵時,GRUB 會讓您編輯該作業系統的全部設定值。
a 在啟動該作業系統前,讓您修改作業系統之啟動參數。
與 e 按鍵不同處,a 按鍵只會讓您修改附加在作業系統核心影像檔後的啟動
參數。
42
第 4 章 系統啟動流程
按鍵 說明
b 啟動這個作業系統。
e 編輯光棒所在的設定值。
c 直接開啟一個指令列來編輯該設定值。
o 新增一行設定值。
d 刪除選擇的設定值。
Esc 回到上一層選單。
43
Linux 系統管理寶典
4.5.7 組態 GRUB
與 LILO 一樣,您也可以組態 GRUB!! 與大部分的設定檔不一樣的是,GRUB 的設定檔
位於 /boot/grub/grub.conf,而非 /etc/ 中。我要提醒您,因為 GRUB 是在啟
動時,才去讀取設定檔,如果不小心刪除了 /boot/grub/grub.conf,會導致 GRUB
啟動時找不到設定檔,而宣告啟動失敗!! 所以,請您盡可能妥善備份好您的 /boot/g
rub/grub.conf。
44
第 4 章 系統啟動流程
GRUB 的設定檔一樣可以區分兩大區域:
• 作業系統參數:用來定義啟動作業系統的方法。
全域參數
參數 說明
default=NUM 預設的作業系統之編號。
45
Linux 系統管理寶典
作業系統參數
參數 說明
4.5.8 安裝 GRUB
如果您打算使用 GRUB,替換掉別的啟動載入器,那您就得重新安裝 GRUB。要安裝
GRUB 時,請使用 grub-install 工具:
44
例如 grub.conf 的 root 參數。
46
第 4 章 系統啟動流程
grub-install DEVICE
範例 4.6. 安裝 GRUB
[root@linux ~]# grub-install /dev/hda
Installation finished. No error reported.
This is the contents of the device map /boot/grub/device.map.
Check if this is correct or not. If any of the lines is incorrect,
fix it and re-run the script `grub-install'.
4.5.9 設定 GRUB 密碼
GRUB 支援以下兩種類型的密碼,以提高 Linux 的安全性:
GRUB 的密碼內容您可以使用下面兩種格式:
47
Linux 系統管理寶典
/boot/grub/grub.conf
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/hda5
定義在全域參數區域的密碼,是當
# initrd /initrd-version.img
修改 GRUB 啟動參數時使用的密碼
#boot=/dev/hda
default=0
timeout=5
password –md5 $1$Skjlzl84fade
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu 定義在作業系統區域的密碼,
則是啟動該作業系統時使用的
title Red Hat Enterprise Linux ES-up (2.6.9-5.EL)
root (hd0,0) 密碼
password 12345
kernel /vmlinuz-2.6.9-5.EL ro root=LABEL=/ rhgb
initrd /initrd-2.6.9-5.EL.img
48
第 4 章 系統啟動流程
#boot=/dev/hda
default=0
timeout=5
password –md5 $1$Skjlzl84fade
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux ES-up (2.6.9-5.EL)
輸入 GRUB 密碼
49
Linux 系統管理寶典
4.6 結論
本章為您安排了 Linux 啟動流程、Runlevel、init 服務,與啟動載入器。本章對於身
為系統管理者的您來說,是非常重要的一個章節。如果您打算完全掌握 Linux,您一
定得徹底熟悉本章介紹的內容。
50