教你如何學習GRUB
告訴GRUB stage2映象的位置。
p with the the following options: (hd0,0)/boot/grub/menu.conf
為菜單的顯示設置配置文件。
下面是對這個命令用法的總結:
1.install
2.ource_of_stage1
3.where_to_install
4.source_of_stage2
5.p source_of_configuration_file
現(xiàn)在,你完成了硬盤上的基本安裝工作。
在軟盤上的安裝:
為了在軟盤上安裝GRUB,你要會用“dd”命令,并且了解它是如何工作的。為了做一張GRUB啟動盤,你要將stage1和stage2文件放到軟盤的開始扇區(qū)中。
安裝stage1到軟盤上:
插入一張已格式化的軟盤,鍵入命令:
# dd if=stage1 of=/dev/fd0 bs=512 count=1
命令的詳細說明如下:
if=input file
i.e., stage1
of=output file
i.e., floppy drive (this may be different on your computer)
bs=bytes to read and write
Here it is 512 bytes.
count=how many times to perform this operation
每次拷貝“bs”數(shù)目的塊到目標地址。
安裝stage2到軟盤
# dd if=stage2 of=/dev/fd0 bs=512 seek=1
這里的步驟同stage1的相同,除了一個seek選項外。Seek選項將調過一個“bs”。例如,在上面的命令中bs的值是512,這樣seek=1意味著將跳過軟盤上前512個字節(jié) ,從513字節(jié)開始。這將使得第一步操作不會覆蓋stage1的前512字節(jié)。
現(xiàn)在你完成了基本的軟盤驅動器安裝。
如果已經安裝了grub要把grub重新安裝到主引導扇區(qū)上,只需要簡單打入makebootable命令就可以了。
3.2 配置grub
grub啟動時會在/boot/grub/中尋找一個名字為menu.lst的配置文件,如果找不到此文件則不進入菜單模式而直接進入命令行模式。
現(xiàn)在,我們來看一下如何在啟動后進入各種操作系統(tǒng),如何建立menu.conf文件。我們就從GRUB支持的啟動過程開始??梢杂袃煞N方法來完成啟動過程:
·A.通過調用內核本地啟動
·B.連續(xù)啟動或者將控制轉給另一個引導器
A模式啟動過程
1.配置跟設備或者告訴GRUB你的根文件系統(tǒng)。
2.告訴GRUB你的內核影像的位置,然后將參數(shù)傳送給內核。
3.重新啟動,試一下。
為了啟動Linux,將內核以bzImage的文件名放在/boot/目錄中,跟文件系統(tǒng)是
/dev/hda1,或者GRUB中的(hd0,0)。啟動過程如下:
1.root (hd0,0) [This sets the root partition]
2.kernel /boot/bzImage root=/dev/hda1 [This sets the kernel]
B模式啟動過程(這種模式假設當前的分區(qū)中安裝了另一個啟動管理器,例如LILO
或者NTLDR):
1.設置根分區(qū)但不要安裝它
2.激活這個分區(qū)
3.配置需要啟動的分區(qū)的第一個扇區(qū)
4.重新啟動,看一下效果。
我們在試試啟動安裝在/dev/hdc1或者(hd1,0)的widows。啟動windows的過程如下:
1.rootnoverify (hd1,0)
2.makeactive
3.chainloader +1 [+1 sets the first sector of the current root
partition]
4.boot [transfers the control and quits GRUB]
menu.conf文件:它用于建立啟動多操作系統(tǒng)時的菜單。建立menu.conf并不難。它使用簡單的英語,就象你在這一節(jié)看到的那樣。
所有的菜單項目都以沒有逗號分隔的“title TITLENAME”開頭。你可以隨意設置
TITLENAME。
設置Linux啟動菜單步驟如下:
1.設置標題
2.設置根分區(qū)
3.設置內核的相應參數(shù)
4.啟動
一個菜單例子:
title Red Hat Linux (2.4.18-14)
root (hd0,0)
kernel /boot/vmlinuz-2.4.18-14 ro root=LABEL=/
initrd /boot/initrd-2.4.18-14.img
前面有#的行是一個注釋。
建立啟動Windows 或者 DOS的菜單:
title Windoze
rootnoverify (hd0,0)
makeactive
chainloader +1
boot
#----
又或者:
title Microsoft Windows XP
map (hd0) (hd1)
map (hd1) (hd0)
root (hd1,0)
chainloader (hd1,0)+1
makeactive
boot
----
注意:root和rootnoverify都是一樣的,把rootnoverify改成root也行。不過經過實踐來看。有時引導win時,系統(tǒng)安裝好后,是rootnoverify (hdX.Y)這樣形式的,這樣會出現(xiàn)windows起不來,出現(xiàn)什么windows什么文件損壞的情況。這時,我們就要把在grub中,引導windows的那段中的rootnoverify改為root
root英文的意思就是根的意思,在這里是讓linux知道自己所處的位置,也就是我們所安裝linux的/根分區(qū)所在的位置 。
----
如果你安裝了兩個版本的Windows—一個是你自己用的,另一個給你的家人用的—這樣第二個就無法安裝,因為有提示說Windows已經安裝了。
有一種簡單的方法可以安裝兩個版本的Windows,即在啟動時隱藏一個分區(qū)而使用另一個。你甚至可以為你的分區(qū)設置密碼保護,這樣可以避免別人錯誤的加載你的分區(qū)。下面介紹如何完成兩個Windows的安裝,hda1和hda2 或者 (hd0,0) 和(hd0,1),用到的命令有l(wèi)ock, password, hide 和 unhide。
建立windows 項目My Entry:
title My Entry
lock
unhide (hd0,0)
hide (hd0,1)
rootnoverify (hd0,0)
makeactive
chainloader +1
boot
#----
為了更好的使用lock命令,你需要在配置文件開頭使用password命令。Password命令的語法如下:password secret(“secret”就是密碼)。任何時候你都可以通過按p鍵兒輸入密碼。
建立Windows 項目Family Entry
title Family Entry
unhide (hd0,1)
hide (hd0,0)
評論