linux grub

現在對grub又有了重新的認識和了解,爲了防止之後忘記,將可以使用三種表示方法的root系統路徑引導記錄下來,防止之後忘記。希望大家能多多交流和學習。說的不對,希望大家能指出。謝謝!!

首先解釋下這裏面分別代表的意思哦

default=0 開機時的默認選擇項目,這個必須與後面的title對照,0表示對應一個title,1表示對應第二個title,以此類推。


timeout=5 如果設置了hiddenmenu,則等待5秒,如沒有按下任意鍵則執行默認的title項目。


splashimage=xxx在選項中顯示的背景圖片。
hiddenmenu 不顯示選項。
title xxx 在選項中顯示的名稱。
root (hd0,0) 設置內核所在的磁盤位置。(hd0,0)表示在第一塊磁盤的第一個分區。

kernel /xxx 代表內核文件名字 ro 文件屬性爲只讀 root=xxx 表示系統所在的磁盤分區即根分區。rhgb指的是顏色,quiet表示的是靜態化啓動(有些信息就補屏蔽掉了)。


initrd /xxx(虛擬化磁盤)鏡像文件名
initrd 稱爲初始化虛擬磁盤,用於幫助加載內核模塊,讓Linux內核在開機過程中不需掛載根目錄就能載入所需要的模塊。如果你的filesystem爲LVM, Raid時,或者硬盤爲SCSI接口(包括SATA和USB接口)時,Linux內核將無法認識這些設備從而導致不能正常啓動。而initrd可以通過 int13 芯片讀取內核模塊(驅動程序),當硬盤被驅動後內核就可以掛載根目錄了。其他模塊的讀取也就沒問題了。

 

現在重點要到啦!!

root=xxx分別有三種表示方法。

1.第一種就是圖中那種很通常的方法啦。

2.第二種就是使用卷標來表示根分區的路徑。具體操作方式如下:

首先使用e2label或者tune2fs -L命令給根分區添加一個卷標,具體如果你不能確定之前有沒有卷標可以使用e2lable 設備名 或者tune2fs 設備名 -l 或者dumpe2fs 設備名 -h來查看。

注意:在這裏給設備設置卷標的時候一定是根分區設備,否則無法啓動。設置名字的時候也需要設置爲/xx。

在grub中書寫的方法如下:

root=LABEL=/aa即可。

3.第三種其實也是類似,我們在使用tune2fs命令查看到設備的詳細信息時,其中有個UUID選項,這個選項就如ID號一樣,時格式化設備的時候生成的,當然也是唯一的。所以第三種的寫法就是:

root=UUID=xxx即可。

好了。在我理解的就這麼多。三種方法各有各的好處,第二種和第三種最大的好處就是當磁盤的接口更換時,不需要重新指定。防止啓動不了系統的錯誤。

 

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