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