簡單描述Fedora啟動系統
Fedora還是比較常用的,于是我研究了一下Fedora啟動菜單。喜歡軟件的朋友可以來看看。前些天Fedora啟動grub.conf丟失,無法進入系統。不過,grub啟動管理器還好好的,只好通過grub命令行來手動引導啟動系統了。
在“從硬盤安裝Fedora啟動菜單 ”中曾經稍微提到過,grub是一個多系統的啟動管理器,不但有Linux版本的grub,也有windows版本的grub。上次從硬盤安裝系統用的就是windows版本的grub。可以說,grub是一個非常強大的多系統啟動管理器,具有多重系統引導,交互式操作,可設置grub啟動密碼,可映射硬盤,可以定制開機畫面等等特點。通過命令行啟動系統就是交互式操作的一個應用,至于其它應用,這里就不再一一列出。想要深入了解它的話,可以看一下grub的手冊:http://www.Linuxsir.org/main/doc/grub/grubmanual/index.html 說來慚愧,我還沒完全看過。
閑話少說,安裝Fedora啟動菜單先把通過命令行啟動系統的過程列出來。為了解釋方便,特標上行號:
1 root (hd0,2)
2 kernel /vmlinuz-2.6.26.5-28.fc8 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
3 initrd /initrd-2.6.26.5-28.fc8.img
4 boot
怎么樣?Linux的啟動命令行是不是很簡潔啊?下面就一一解釋這幾命令。
第1行命令:指定/boot所在的分區。
要是不知道自己的/boot分區在哪里,沒關系,先輸入root (hd0,然后按Tab鍵,它會顯示可能的分區,然后根據分區類型判斷/boot分區。我就是這么做的......所以Tab鍵是Linux里很好用的一個鍵。這里指定/boot分區并不是必須的,在這里省略的話要在kernel以及initrd中指定,即:kernel (hd0,2)/vmlinuz-2.6......和initrd (hd0,2)/initrd-2.6......
關于"hd0,2”,是指第一塊硬盤的第三個分區,這是一個主分區。
Linux里的分區表示方法有兩種:一是像"hd0,2"這種純數字表示法,它是以"hd0,0"開始,意思是第一塊硬盤的第一個分區;第二塊硬盤就是hd1。還有一種是hda1這一種,它也表示第一塊硬盤的第一個分區;第二塊硬盤就是hdb。兩種表示法用在不同的場合,純數字表示法一般用在grub中指定/boot分區;第二種方法是日常使用的表示法,硬盤掛載等都用這種表示法。關于主分區與擴展分區,這里稍微提一點:擴展分區是從hdx5或 hdx,4開始的,其中x代表硬盤號。要更加詳細的了解Linux的分區表示法,Google一下。
第2行命令:指定內核映像及根分區。
輸入kernel /vmlinuz,然后按Tab鍵補全內核映像全名;補全以后可以看到我的Fedora啟動內核映像是vmlinuz-2.6.26.5-28.fc8。如果有一個以上的內核,它會全部顯示出來讓你選擇(這種情況遇到過,從8升級到9以后,我的啟動菜單里就有了兩個映像)。還有就是,我的/boot分區不是在根分區中,而是一個獨立的分區;如果/boot分區不是一個獨立分區,而是位于根分區中,就要這樣寫: kernel /boot/vmlinuz-2.6.26.5-28.fc8 ro root=/dev/VolGroup00/LogVol00 rhgb quiet,下面的initrd要寫成:initrd /boot/initrd-2.6.26.5-28.fc8.img。映像后面的部分是用來指定根分區的,要手動輸入。ro的意思是read only,root=/dev/VolGroup00/LogVol00是根分區位置,rhgb意思是圖形化啟動過程,quiet意思是不要顯示啟動信息。在實際操作中,我發現內核映像以后的部分其實不是必須的;也就是說,即使不輸入這部分內容,不指定根分區,不指定圖形化啟動過程,不省略啟動信息,也可以正確啟動。對于不必指定根分區,是否跟我的系統是單內核有關系?
這行命令要多理解一下。首先,vmlinuz中,vm是指vritual memery,linuz的意思是說,這一個經過壓縮的內核映像。還有,這一行命令中的root跟第一行命令中的root表達的不是同一意思。第一行命令中的root指的是Fedora啟動分區,即/boot分區;第二行命令中的root指的是系統的根分區,即/分區。要詳細理解兩者的區別,就牽涉到Linux 文件系統及目錄結構,它是Linux中關鍵性的概念之一,我會找個時間寫一些關于它東西,淺談一下我對它的理解。"root="后面的"/dev /VolGroup00/LogVol00"就是根分區的位置;看起來是不是怪怪的?因為我的根分區用的不是普通的硬盤分區,而是邏輯卷,術語叫 LVM(logical volume manager)。這個也是Linux里一個很重要的東西。LVM要結合Linux硬盤分區及目錄結構來理解Fedora啟動,這里就不談了,否則會越扯越遠,偏離正題。
【編輯推薦】