歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> GRUB筆記:grub.conf解析 stage介紹 grub故障及安裝

GRUB筆記:grub.conf解析 stage介紹 grub故障及安裝

日期:2017/2/28 15:47:11   编辑:Linux教程

一、grub簡介
系統啟動引導管理器,是在計算機啟動後運行的第一個程序,他是用來負責加載、傳輸控制到操作系統的內核,一旦把內核掛載,系統引導管理器的任務就算完成退出,系統引導的其它部份,比如系統的初始化及啟動過程則完全由內核來控制完成。
二、grub的配置文件grub.conf
[root@server ~]# cat /boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,6)
# kernel /vmlinuz-version ro root=/dev/mapper/vg0-root
# initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,6)/grub/splash.xpm.gz
#hiddenmenu
title Red Hat Enterprise Linux (2.6.32-220.el6.x86_64)
root (hd0,6)
kernel /vmlinuz-2.6.32-220.el6.x86_64 ro root=/dev/mapper/vg0-root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD quiet SYSFONT=latarcyrheb-sun16 rhgb crashkernel=auto rd_LVM_LV=vg0/root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM
initrd /initramfs-2.6.32-220.el6.x86_64.img
title Windows 7 Ultimate
rootnoverify (hd0,0)
chainloader +1

解釋:
GRUB要求設備名被括在一個括號中。fd表示軟盤,hd 表示硬盤(不區分IDE還是SCSI)。其次設備是從0開始編號。分區也是如此,分區和設備之間用一個逗號分開。
default 啟動系統時在人為不干預的情況下,默認讀取哪一個title,如果安裝了多個不同版本內核或者安裝了不用的操作系統,會產生多個title,0表示第一個,1第二個,以此類推。
timeout 開機等待用戶的超時時間,單位為秒。在超時時間結束時,如果用戶沒有人為選擇,則以default指定的title讀取。
hiddenmenu:用於啟動時隱藏菜單,除非在timeout之前按下任意鍵才能看到菜單。
title:定義引導項名稱。
root:指定boot分區所在磁盤及分區,如:root (hd0,6)。
kernel:指定kernel文件所在絕對目錄地址,如:kernel /vmlinuz-2.6.32-220.el6.x86_64 ,這裡的/表示root(hd0,6)分區
initrd:指定ramdisk盤所在絕對目錄地址,如:initrd /initramfs-2.6.32-220.el6.x86_64.img
【詳解kernel】
kernel /vmlinuz-2.6.32-220.el6.x86_64 ro root=/dev/mapper/vg0-root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD quiet SYSFONT=latarcyrheb-sun16 rhgb crashkernel=auto rd_LVM_LV=vg0/root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM

kernel /vmlinuz-2.6.32-220.el6.x86_64 :制定內核文件的位置
ro:剛開始以只讀方式掛載根文件系統
root=/dev/mapper/vg0-root:root根分區設備位置
rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD:為了加速引導啟動進程,可以指定磁盤是否加密、語言環境、不啟用LVM、RAID、鍵盤等等,節省dracut查找的時間
SYSFONT=latarcyrheb-sun16 KEYTABLE=us:對於有加密磁盤的系統啟動,可以指定鍵盤規格和字體顯示等
quiet:啟動過程中只有重要信息顯示,類似硬件自檢的消息不回顯示
rhgb:RedHat graphics boot,就是會看到圖片來代替啟動過程中顯示的文本信息,這些信息在啟動後用dmesg也可以看到

【注意】
kernel與initrd這兩個設置項中,指定的路徑都是絕對路徑。因為這兩個文件都存放在/boot目錄。而且/boot所在的分區已經指定,所以就無需再指明kernel與initrd在哪個分區了。如果boot分區為獨立分區,那麼前面的/boot省略掉。如果boot分區為非獨立分區,那麼必須加上/boot。
【例如】
獨立分區:kernel /vmlinuz-2.6.32-220.el6.x86_64
非獨立分區:kernel /boot/vmlinuz-2.6.32-220.el6.x86_64

Copyright © Linux教程網 All Rights Reserved