1. 程式人生 > >grub命令行和配置文件配置配置信息

grub命令行和配置文件配置配置信息

啟動引導 查看 mic str encrypt pla 允許 單用戶模式 enabled

一、grub簡介

GNU GRUB(簡稱“GRUB”)是一個來自GNU項目的啟動引導程序。GRUB是多啟動規範的實現,它允許用戶可以在計算機內同時擁有多個操作系統,並在計算機啟動時選擇希望運行的操作系統。GRUB可用於選擇操作系統分區上的不同內核,也可用於向這些內核傳遞啟動參數。

GNU GRUB的前身為Grand Unified Bootloader。它主要用於類Unix系統;同大多Linux發行版一樣,GNU系統也采用GNU GRUB作為它的啟動器。Solaris從10 1/06版開始在x86系統上也采用GNU GRUB作為啟動器。

二、GRUB的特性

GRUB可動態配置;它在啟動時加載配置信息,並允許在啟動時修改,如選擇不同的內核和initrd。為此目的,GRUB提供了一個簡單的類似Bash的命令行界面,它允許用戶編寫新的啟動順序。

GRUB非常輕便。它支持多種可執行格式;它除了可適用於支持多啟動的操作系統外,還通過鏈式啟動功能支持諸如Windows和OS/2之類的操作系統。GRUB支持大部分的Unix文件系統,也支持Windows適用的FAT和NTFS文件系統,還支持LBA模式。GRUB允許用戶查看它支持的文件系統裏文件的內容。

GRUB具有多種用戶界面。多數Linux發行版利用GRUB對圖形界面的支持,提供了定制的帶有背景圖案的啟動菜單,有時也支持鼠標。GRUB可通過GFX支持更美觀的開機畫面和開機菜單。通過對GRUB的文字界面的設定,可以通過串口實現遠程終端啟動。

GRUB可以從網絡上下載操作系統鏡像,因此可以支持無盤系統。GRUB支持在啟動操作系統前解壓它的鏡像。

與其它啟動器不同,GRUB可以通過GRUB提示符直接與用戶進行交互。載入操作系統前,在GRUB文本模式屏幕下鍵入c鍵可以進入GRUB命令行。在沒有作業系統或者有作業系統而沒有”menu.lst”(或grub.cfg)配置文件的系統上,同樣可以進入GRUB提示符。通過類似bash的命令,GRUB提示符允許用戶手工啟動任何操作系統。把合適的命令記錄在”menu.lst”(或grub.cfg)文件裏,可以自動啟動一個操作系統。

GRUB擁有豐富的終端命令,在命令行下使用這些命令,用戶可以查看硬盤分區的細節,修改分區設置,臨時重新映射磁盤順序,從任何用戶定義的配置文件啟動,以及查看GRUB所支持的文件系統上的其它啟動器的配置。因此,即便不知道一臺電腦上安裝了什麽,也可以從外部設備啟動一個操作系統。

GRUB采用滾動屏幕選擇想要啟動的操作系統。通過向”menu.lst”(或grub.cfg)文件中添加相關信息,GRUB可以控制150或者更多的啟動選項,在啟動時用方向鍵進行選擇。

通過鏈式啟動,一個啟動器可以啟動另一個啟動器。GRUB通過2到3行的命令就可以從DOS、Windows、Linux、BSD和Solaris系統啟動。

盡管GRUB為類Unix系統進行了編譯和打包,但也有供DOS和Windows使用的變種GRUB4DOS等。GRUB也可以不附帶任何操作系統而作為孤立系統安裝。從CD上啟動時運用GRUB需要1個文件,而從軟盤、硬盤和USB設備上啟動時需要2個文件。這些文件可以在任何支持GRUB的Linux CD上找到,用戶可以很容易的找到它們。

三、GRUB的配置方法

grub命令行的指令其實就是/boot/grub/grub.conf文件的配置信息,兩者基本完全一樣

grub legacy配置文件

配置文件:/boot/grub/grub.conf

default=#: 設定默認啟動的菜單項;落單項(title)編號從0開始
timeout=#:指定菜單項等待選項選擇的時長
splashimage=(hd#,#)/PATH/XPM_FILE:菜單背景圖片文件路徑
password [–md5] STRING: 啟動菜單編輯認證
hiddenmenu:隱藏菜單
title TITLE:定義菜單項“標題”, 可出現多次
root (hd#,#):查找stage2及kernel文件所在設備分區;為grub的根
kernel /PATH/TO/VMLINUZ_FILE [PARAMETERS]:啟動的內核
initrd /PATH/TO/INITRAMFS_FILE: 內核匹配的ramfs文件
password [–md5|–encrypted ] STRING: 啟動選定的內核或操作系統時進行認證

生成grub口令

grub-md5-crypt
grub-crypt

破解root口令:

啟動系統時,設置其運行級別1進入單用戶模式:
(1) 編輯grub菜單(選定要編輯的title,而後使用e命令)
(2) 在選定的kernel後附加1, s, S或single都可以
(3) 在kernel所在行,鍵入“b”命令

啟動一個操作系統必要的配置只需要三行:

  1. # 指定boot分區,(hd0,0)一般指向的都是boot分區,如果不是再更換
  2. root (hd0,0)
  3. 啟動參數 # root分區標識可以是uuid也可以是/dev下的分區設備名,啟動參數很多可以不填
  4. kernel /vmlinuz-version root分區標識
  5. # 指定init文件 "/"代表的是boot分區,這裏boot為最開始的根分區
  6. initrd /initramfs-version.img
  7. #啟動系統,這行配置只在命令行模式下使用,配置文件不寫
  8. boot

四、GRUB Legacy 更多的應用和配置

https://wiki.archlinux.org/index.php/GRUB_Legacy_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

grub命令行和配置文件配置配置信息