grub.conf配置核心知識詳解

引導加載程序(Boot loader)是在計算機在加載操作系統內核之前運行的一段小程序。通過這段小程序,可以初始化硬件設備、建立內存空間的映射圖,從而將系統的軟硬件環境加載到一個適合的狀態,以便爲最終調用操作系統內核做好準備。通常,引導加載的程序依賴於硬件實現,早期的Linux系統常見的引導加載程序有2種,即Grub和Lilo,現如今Grub已經成爲了主流(類似Windows下的boot.ini引導文件)。

引導加載程序讀取grub.conf文件的配置信息,然後根據對應配置信息來啓動不同的操作系統, 管理員可以從三個路徑查看grub.conf的配置信息,具體如下所示:

[root@oldboy boot]# cat /etc/grub.conf
#<==也可讀取/boot/grub/menu.lst(軟鏈接)或/boot/grub/grub.conf(真實文件)。
...省略多行註釋信息,其實這裏的註釋已經解釋的蠻清楚了,只是90%的初學者看不見這裏...
default=0
#<==默認情況下如何加載系統,0表示加載菜單中對應的第一個名字,多系統時可以調節默認加載項。
timeout=5
#<==表示多少秒之後開始加載默認的系統,給管理員提前選擇的時間。
splashimage=(hd0,0)/grub/splash.xpm.gz 
#<==啓動時顯示的背景圖標,在(hd0,0)代表/boot分區。
hiddenmenu  
#<==系統啓動時,會隱藏啓動菜單信息,按默認設置啓動系統,除非用戶按鍵干預。
password [–md5|–encrypted ] STRING      
#<==當編輯grub菜單時需要輸入密碼認證,Linux基礎優化之一,默認沒有。
title CentOS 6 (2.6.32-696.el6.x86_64) 
#<==要啓動的系統對應的項目名稱,可按需修改。
    root (hd0,0)  
#<==引導內核文件和內核所需驅動文件所在的分區,(hd0,0)代表/boot分區。
#<==其中hd0表示計算機的第一塊磁盤,(hd0,0)中逗號後面的0表示第一個分區,即(hd0,0)表示第一塊磁盤的第一個分區,即/dev/sda1(分區通常最先獨立分出的/boot分區,對應的設備名就是sda1)。
    kernel /vmlinuz-2.6.32-696.el6.x86_64 ro root=UUID=491eabe5-e6c0-4457-9bdb-b37cc6751308 rd_NO_LUKS rd_NO_LVM.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet 
#<==整行表示加載內核,即讀取boot分區上的內核文件及一堆可選內核參數。
#<==/vmlinuz-2.6.32-696.el6.x86_64爲內核文件。root=UUID=後面一串數字表示根對應的設備信息(/dev/sda3),其他介紹的作用不大,忽略即可。
   initrd /initramfs-2.6.32-696.el6.x86_64.img  #<==內核啓動所需的驅動文件的所在地,存在於boot區。

提示:這個grub.conf的知識其實在企業Linux運維中用途不是很大,講解grub的目的是,希望讀者能瞭解Linux系統的整個啓動流程做鋪墊,RHCE認證課程會有修復grub.conf的考題,其實沒什麼大用,因爲在IT網站運維工作中,極少在線處理問題,出問題也是直接切換服務了,之後在慢慢研究修復還是重裝都可以。


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