新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 教你如何學(xué)習GRUB

教你如何學(xué)習GRUB

作者: 時間:2016-09-12 來源:網(wǎng)絡(luò) 收藏

rootnoverify (hd0,1)

makeactive

chainloader +1

boot

任何人都可以啟動這個項目,而無須輸入密碼。

這有一個使用password命令的有趣的竅門。為了在缺省菜單列表或配置文件中隱藏某些項目,你可以使用下面的命令加載一個定制的列表:

password secret

在這個命令中,“secret”是密碼,而/boot/grub/secret-list.conf是密碼文件。這樣做之前,你要先進入到根目錄或者給出全路徑名。例如:

password secret (hd0,4)/boot/grub/secret-list.conf

還有一個更重要的命令是“map”。當你有兩塊硬盤,一個無法從第二塊硬盤啟動的操作系統(tǒng),例如Windows,就可以使用map命令。例如,你能夠?qū)d0映射為hd1,將hd1映射為hd0。換句話說,你可以虛擬的交換兩個硬盤而啟動所需要的操作系統(tǒng) 。命令形式如下:

grub> map (hd0) (hd1)

grub> map (hd1) (hd0)

啟動FreeBSD:

title FreeBSD 4.0

root (hd0,4,a)

kernel /boot/loader

boot

#----

這里我們調(diào)用了FreeBSD的啟動管理器。Root (hd0,4,a)由四個參數(shù),是因為

FreeBSD對一個單獨分區(qū)進行了虛擬分割。我們稱根分區(qū)為“a”。如果FreeBSD占

據(jù)了整個第二塊硬盤,這里就應(yīng)該是root (hd0,a)。這樣,就不是調(diào)用內(nèi)核而是調(diào)用FreeBSD的啟動管理器,它要比調(diào)用內(nèi)核更易使用。

(注意:推薦在使用OpenBSD和GNU/Hurd之前,要先試一下鏈式加載。)

現(xiàn)在你已經(jīng)完成了基本的編譯、安裝和配置。你對了解的越多,就越會發(fā)現(xiàn)是一種控制啟動的易用和高效的方法。

各種GRUB命令:

default xx

表明xx是缺省的啟動項目

timeout yy

表明在yy秒后缺省啟動項目將啟動

fallback zz

在第一個啟動項目失敗后,過了timeout時間后,就將啟動zz項目。

color

這個命令將生成彩色菜單。它的語法是:color normal current_selection。這兩個域都可以有兩個值,形如foreground/background。例如:

color green/black or light-gray/blue

你也可以使用相關(guān)的數(shù)字。

記?。核械闹刀际菑?開始,所以0是第一個

3.3 GRUB啟動盤

要制作引導(dǎo)盤,需執(zhí)行一些簡單的步驟。首先,在新的軟盤上創(chuàng)建 ext2 文件系統(tǒng)。然后,將其安裝,并將一些 GRUB 文件復(fù)制到該文件系統(tǒng),最后運行 grub 程序,它將負責設(shè)置軟盤的引導(dǎo)扇區(qū)。

將一張空盤插入 1.44MB 軟驅(qū),輸入:

# mke2fs /dev/fd0

創(chuàng)建了 ext2 文件系統(tǒng)后,需要安裝該文件系統(tǒng):

# mount /dev/fd0 /mnt/floppy

現(xiàn)在,需要創(chuàng)建一些目錄,并將一些關(guān)鍵文件(原先安裝 GRUB 時已安裝了這些文件)復(fù)制到軟盤:

# mkdir /mnt/floppy/boot

# mkdir /mnt/floppy/boot/grub

# cp /boot/grub/stage1 /mnt/floppy/boot/grub

# cp /boot/grub/stage2 /mnt/floppy/boot/grub

再有一個步驟,就能得到可用的引導(dǎo)盤。

bash中,從 root 用戶運行“grub”,該程序非常有趣并值得注意,因為它實際上是GRUB 引導(dǎo)裝入器的半功能性版本。盡管 Linux 已經(jīng)啟動并正在運行,您仍可以運行 GRUB 并執(zhí)行某些任務(wù),而且其界面與使用 GRUB 引導(dǎo)盤或?qū)?GRUB 安裝到硬盤 MBR 時看到的界面(即GRUB控制臺)完全相同。

在 grub> 提示符處,輸入:

grub> root (fd0)

grub> setup (fd0)

grub> quit

現(xiàn)在,引導(dǎo)盤完成了。

如果要把GRUB裝到硬盤上,也很容易。這個過程幾乎與引導(dǎo)盤安裝過程一樣。首先,需要決定哪個硬盤分區(qū)將成為 root GRUB 分區(qū)。在這個分區(qū)上,創(chuàng)建 /boot/grub 目錄,并將 stage1 和 stage2 文件復(fù)制到該目錄中,可以通過重新引導(dǎo)系統(tǒng)并使用引導(dǎo)盤,或者使用駐留版本的 GRUB 來執(zhí)行后一步操作。在這兩種情況下,啟動 GRUB,并用 root 命令指定 root 分區(qū)。例如,如果將 stage1 和 stage2 文件復(fù)制到 hda5 的 /boot/grub 目錄中,應(yīng)輸入 root (hd0,4)。接著,決定在哪里安裝 GRUB -- 在硬盤的 MBR,或者如果與 GRUB 一起使用另一個“主”引導(dǎo)裝入器,則安裝在特定分區(qū)的引導(dǎo)記錄中。如果安裝到 MBR,則可以指定整個磁盤而不必指定分區(qū),如下(對于 hda):

grub> setup (hd0)

如果要將 GRUB 安裝到 /dev/hda5 的引導(dǎo)記錄中,應(yīng)輸入:

grub> setup (hd0,4)

現(xiàn)在,已安裝 GRUB。引導(dǎo)系統(tǒng)時,應(yīng)該立即以 GRUB 的控制臺方式結(jié)束(如果安裝到 MBR)?,F(xiàn)在,應(yīng)創(chuàng)建引導(dǎo)菜單,這樣就不必在每次引導(dǎo)系統(tǒng)時都輸入那些命令。

從軟盤啟動grub

制作啟動盤后可以用軟盤啟動引導(dǎo)硬盤上的操作系統(tǒng), 插入制作好的啟動軟盤,進入BIOS設(shè)定軟盤啟動。軟盤啟動成功后就會進入grub的命令行模式

grub>

要啟動一個操作系統(tǒng),首先指定引導(dǎo)哪個分區(qū)上的系統(tǒng),例如要引導(dǎo)指第一個硬盤上的第一個分區(qū)的操作系統(tǒng),先鍵入

grub>root (hd0,0)

接著如果要啟動的是Windows系統(tǒng),鍵入

grub>chainloader (hd0,0)+1

注意(hd0,0)要隨著硬盤和分區(qū)的不同而改變數(shù)字。

如果要引導(dǎo)Linux或其他系統(tǒng),應(yīng)鍵入

grub>kernel (hd0,0)/boot/vmlinuz root=/dev/hda1

注意hda1參數(shù)也要隨著硬盤和分區(qū)的不同而改變,如從第二個硬盤的第一個分區(qū)引導(dǎo)則用hdb1。

最后敲入boot就可以啟動系統(tǒng)了。

在任何時候不能確定命令或者命令的參數(shù)都可以按Tab獲得相關(guān)的幫助。用上下鍵可以獲得命令的歷史記錄。其實這些命令就是menu.lst的啟動描述,您也可以根據(jù)那些描述來自己鍵入啟動命令,最后敲入boot就可以引導(dǎo)系統(tǒng)了。

4 GRUB的交互性

GRUB 最好的優(yōu)點之一就是其強健的設(shè)計 -- 在不斷使用它時請別忘了這點。如果更新內(nèi)核或更改它在磁盤上的位置,不必重新安裝 GRUB。事實上,如有必要,只要更新 menu.lst 文件即可,一切將保持正常。



關(guān)鍵詞: GRUB linux

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉