
【 基本介紹】
該項(xiàng)目是由tinybit(不點(diǎn))于2003年發(fā)起的,活躍的開發(fā)者主要有tinybit,bean,chenall,roy和karyonix等。【 軟件特點(diǎn)】
作為GNU GRUB啟動引導(dǎo)程序的擴(kuò)充,grub4dos將焦點(diǎn)放在兼容性上。這體現(xiàn)在這幾個方面上:當(dāng)系統(tǒng)已經(jīng)安裝有操作系統(tǒng)和啟動引導(dǎo)程序時(shí),它可以以多種多樣的方式被加載。編寫條目時(shí)它可以被DOS作為普通應(yīng)用程序加載,或者被GNU/Linux使用kexec系統(tǒng)調(diào)用作為內(nèi)核文件加載。此外,NTLDR、BOOTMGR和其它Linux下的啟動引導(dǎo)程序均可加載之。
當(dāng)安裝為首先啟動的啟動引導(dǎo)程序時(shí),它能啟動各種各樣的操作系統(tǒng),其中包括GNU/Linux,Windows,DOS等,并支持各種媒質(zhì),如CD-ROM,軟盤,硬盤,U盤,PXE等等。
GRUB4DOS 最大的成功之處就是既學(xué)習(xí)了windows的方便易用,又引入linux的強(qiáng)大功能。
【 命令指引】
blocklist 輸出文件的塊清單表達(dá)法。boot 引導(dǎo)已加載的操作系統(tǒng)或扇區(qū)鏈?zhǔn)郊虞d器。
bootp 通過BOOTP初始化網(wǎng)絡(luò)設(shè)備。
cat 顯示指定文件的內(nèi)容。
cdrom 初始化或者停止所有的 ATAPI CDROM 設(shè)備。
chainloader 加載扇區(qū)鏈?zhǔn)郊虞d器。
cmp 比較兩個文件, 并且報(bào)告兩者之間的差異。
color 改變菜單的顏色。
configfile 將指定文件作為配置文件予以加載。
debug 打開/關(guān)閉調(diào)試模式。
default 把 NUM 項(xiàng)菜單設(shè)為缺省值。
device 聲明BIOS驅(qū)動器對應(yīng)的實(shí)際物理設(shè)備。
dhcp 通過DHCP初試化網(wǎng)絡(luò)設(shè)備。
splashimage 圖形模式下載入背景圖片文件。
foreground 設(shè)置圖形模式下的前景色。
background 設(shè)置圖形模式下的背景色。
clear 清屏。
displayapm 顯示 APM BIOS 的相關(guān)信息。
displaymem 顯示 GRUB 所判斷到的當(dāng)前系統(tǒng)的內(nèi)存分布,包括所有物理內(nèi)存區(qū)域。
displaymem 顯示諸多文件的內(nèi)容。
embed 如果設(shè)備是個驅(qū)動器, 則將Stage 1.5嵌入到主引導(dǎo)扇區(qū)之后。
fallback 如果調(diào)用當(dāng)前的菜單項(xiàng)時(shí)出現(xiàn)錯誤,則跳轉(zhuǎn)到 NUM 項(xiàng)后重試。
commandline 進(jìn)入命令行方式。
find 在所有分區(qū)上查找文件名, 并顯示包含該文件的設(shè)備。
fstest 切換文件系統(tǒng)的試驗(yàn)?zāi)J健?br />geometry 輸出驅(qū)動器的相關(guān)信息。
halt 關(guān)閉系統(tǒng)(計(jì)算機(jī))。
help 顯示內(nèi)部命令的幫助信息。
hiddenmenu 隱藏菜單。
hide 通過在分區(qū)類型上置隱藏標(biāo)志,隱藏指定分區(qū)。
ifconfig 指定 IP 地址, 子網(wǎng)掩碼, 網(wǎng)關(guān)和服務(wù)器地址。不帶參數(shù)時(shí),將顯示當(dāng)前的網(wǎng)絡(luò)配置。
impsprobe 探測 Intel 多處理器規(guī)范 1.1/1.4 配置表并使所找到的各處理器啟動進(jìn)入閉循環(huán)。
initrd 加載Linux格式的初始化虛擬盤, 并設(shè)置必要的參數(shù)。
install 安裝STAGE1到指定設(shè)備上,安裝加載STAGE2需要的塊列表到STAGE2上。
ioprobe 偵測指定設(shè)備的 I/O 端口號。
kernel 嘗試載入主引導(dǎo)影像文件(Linux內(nèi)核格式)。
lock 如果用戶未被認(rèn)證,則終止命令的執(zhí)行。
makeactive 將 root 設(shè)備置為活動分區(qū)。
map 對設(shè)備進(jìn)行映射。
md5crypt 產(chǎn)生一個 MD5 格式的密碼。
module 對多重啟動影像, 加載啟動模塊文件 (不處理該文件的內(nèi)容, 用戶必須自己確定核心的要求)。
modulenounzip 與 module 類似, 但是禁用了自動解壓縮。
pager 沒有參數(shù)時(shí),切換頁模式。
partnew 創(chuàng)建一個新的主分區(qū)。
parttype 改變指定分區(qū)(PARTITION)的分區(qū)類型(TYPE)。
password 設(shè)置密碼。
pause 終止命令的運(yùn)行,并給出一段信息。任意鍵按下后,將繼續(xù)。
quit 從 GRUB 命令行中退出。
rarp 用 RARP 初始化網(wǎng)絡(luò)設(shè)備。
read 從內(nèi)存的指定位置讀取一個 32-bit 的值,并以十六進(jìn)制形式顯示出來。
write 寫一個 32 位的值 VAL 到內(nèi)存地址 ADDR。
reboot 重啟系統(tǒng)(計(jì)算機(jī))。
fontfile 指定中文字體文件,并切換到中文顯示方式。
root 設(shè)置根分區(qū)。
rootnoverify 類似`root指令, 但不測試安裝該分區(qū)。
savedefault 將當(dāng)前項(xiàng)設(shè)置為默認(rèn)的引導(dǎo)項(xiàng)。
serial 初始化一個串口設(shè)備。
setkey 改變鍵盤映射關(guān)系。
setup 自動安裝GRUB.
terminal 選擇一個終端。
terminfo 指定終端的功能。
testload 以多種不同的方式讀取文件(由FILE指定)的整個內(nèi)容,并予以比較,以測試文件系統(tǒng)的代碼。
testvbe 測試所指定(MODE)的 VBE 模式。
setvbe 為后續(xù)的每個kernel命令行設(shè)置VBE模式。
tftpserver 指定 TFTP 服務(wù)器的 IP 地址。
timeout 設(shè)置在自動啟動缺省菜單前所等待的秒數(shù)。
title 命名菜單項(xiàng)。
unhide 通過清除隱藏標(biāo)志,解除指定分區(qū)(PARTITION)的隱藏。
uppermem 強(qiáng)制指定僅有(KBYTES) KB 的上位內(nèi)存。
vbeprobe 偵測 VBE 的信息。
【 使用說明】
安裝:下載grubinst.exe,運(yùn)行將grub4dos安裝到硬盤MBR(masterbootrecord,即硬盤第一扇區(qū),但大于2T的分區(qū)類型為GPT(非MBR),新手最好不要安裝到主機(jī)硬盤上,可選擇U盤等外接設(shè)備安裝,然后把解壓的文件grldr,error等全都拷貝到啟動盤根目錄,啟動時(shí)按F12選擇外設(shè)啟動即可。
解壓GRUB4DOS后,將其中的grub.exe文件放在你的一個FAT32分區(qū)中。
修復(fù):
1.使用DOS啟動盤或Windows98的啟動盤啟動到DOS模式下,然后鍵入:d:\tmp\grub.exe這里的d:\tmp是筆者解壓縮GRUB4DOS的目錄。這樣就進(jìn)入了GRUB環(huán)境,可以看到一個grub>提示符。
2.恢復(fù)GRUB引導(dǎo)記錄。在grub>提示符下鍵入:
root(hdx,y)
kernel(hdx,y)/boot/yourkernelnameroroot=/dev/hdxx
setup(hd0)
上面第一條命令是指定你的/boot分區(qū)位置,如果/boot沒有單獨(dú)分區(qū),那么就是你的/分區(qū)。
第二條命令指定內(nèi)核位置,具體位置根據(jù)自己的實(shí)際情況確定。
第三條命令是將GRUB引導(dǎo)記錄寫入MBR。
如果對Linux分區(qū)位置不十分清楚,可以使用Tab鍵補(bǔ)全功能來查看確定。執(zhí)行完setup命令后會看到“succeed!”字樣,此時(shí)重啟即可。
3.如果只是想啟動Linux,而不是修復(fù)GRUB,那么可以在進(jìn)入DOS后鍵入下面命令啟動你的Linux系統(tǒng)。
d:\tmp\grub.exe--config-file=(hdx,y)/boot/grub/grub.conf
其中參數(shù)同上。
wingrub(GRUB4DOS)的安裝:
在上面的網(wǎng)址中,有下載頁面,里面說的就是wingrub;
1)、安裝:
1]安裝grub軟件到機(jī)器中,點(diǎn)鼠標(biāo)應(yīng)該會吧,就直接按它默認(rèn)的安裝,下一步、下一步就安裝好了;
2]安裝grub;
打開wingrub程序,選擇tools菜單,然后點(diǎn)擊installgrub,出來一個對話框;
這里面有兩個方法供我們選擇;(個人建議選B)
A)我們直接點(diǎn)一下BootFromGrubPartion就行,然后點(diǎn)擊,右邊的下接框;選擇要安裝在哪個分區(qū)中,然后按最下邊的[install];
您可能在下拉的菜單的對話框中,看到的是(hd0,0)或者(hd0,1)等,那就選(hd0,0);如果您只看到(hd0,1),說明您的第一個分區(qū)是NTFS的,這也沒有什么,很正常;如果您看不到什么下拉框,您就看下面的辦法;
B)您可以點(diǎn)SystermDevice,然后在右邊的選擇框中,選C;然后再點(diǎn)BOOTFROMBOOT.INI就好,如果不行就換;在Title中寫入mygrub;然后在TimeOUT寫上10;
這樣grub就安裝好了;他的配置文件在c:\grub\中,配置文件是c:\grub\menu.lst,這個配置文件起到?jīng)Q定性作用;所以我們一定要寫好;語法和Linux中的沒有區(qū)別;是一樣的;
A和B還是有點(diǎn)小小的區(qū)別,A的方法是開機(jī)就能看到所有的在menu.lst中系統(tǒng);而B,則必須按一下剛才我們所填寫的mygrub,然后才能看到在menu.lst所提到的系統(tǒng);
3、配置grub;
其實(shí)最簡單的配置方法不是來自于圖形的點(diǎn)鼠標(biāo),初學(xué)Linux的弟兄可能會說,我不點(diǎn)鼠標(biāo),我能做什么?呵。。。。沒錯,但在配置grub的過程中,最沒有效率的就是點(diǎn)鼠標(biāo);其實(shí)我們點(diǎn)了十幾分鐘的鼠標(biāo),也是達(dá)到一個目的,就是把grub配置起來。而他的配置文件就是c:\grub\menu.lst,我們揮汗如雨的點(diǎn)鼠標(biāo),無非是配置這個文件;如果不用點(diǎn)鼠標(biāo)的辦法來配置,
一分鐘都不到就OK;只要掌握一點(diǎn)小小的技巧;有何難呢??
在配置c:\grub\menu.lst的過程中,我們只是再用一下wingrub的查看分區(qū)的界面,其它的只是用記事本就能寫好;c:\grub是隱藏起來的,我們要在游覽器中加入c:\grub就
可以看得到;
0]打開wingrub,點(diǎn)tools=》partioinlist(分區(qū)列表),這里能了解到機(jī)器的分區(qū),比如我們可能看到的FAT32的分區(qū)是(hd0,1)等等,事實(shí)上,我們的確需要fat32分來來存放下載的Linux光盤映象;我們通過這個能知道我們把光盤ISO存放到(hdX,Y)了,也能知道(hdX,Y)所對應(yīng)的Windows分區(qū)的是哪個,是C,還是D,還是E,明白了吧;
1]首先我們找一個FAT32的分區(qū),把下載下來的ISO直接放到分區(qū)的根目錄下面,不要放在任何目錄中;
2]還是在這個分區(qū),建一個目錄,比如是linux,從下來下來的第一張ISO中isolinux中抽取vmlinuz和initrd.img兩個文件,放到linux目錄中;注意只放這兩個文件,不要放其它的內(nèi)容,如果放了其它的,可能出現(xiàn)安裝到中途退出的情況;
注意:目錄是名是小寫的;在書寫menu.lst時(shí),我們要用半角英文,標(biāo)點(diǎn)之類的全是半角的;titlerootkernelinitrd全是小寫的英文;切注意大小寫;
3]書寫menu.lst,怎么書寫,對我來說難嗎?不難!
我們打開menu.lst后,可能里面已經(jīng)有內(nèi)容了,比如有個timeout10,如果沒有這行可以自己寫上;沒有什么難的;
timeout10#這是開機(jī)等待進(jìn)入系統(tǒng)的時(shí)間,是10秒
titleWindowsXP#我們的機(jī)器中都有windows,這個就是用來啟動windows的;總共有四行,不要弄錯了,可以照抄到你的配置文件中;
root(hd0,0)
makeactive
chainloader+1
簡單的menu.lst配置linux引導(dǎo)說明;通過menu.lst,我們可以配置Linux的啟動和引導(dǎo);不只是安裝的引導(dǎo),也可以引導(dǎo)已經(jīng)安裝好的Linux系統(tǒng);語法結(jié)構(gòu)有下的四條,舉例如下:總共
有兩個書寫格式,任選其一;
格式一:最簡單:
代碼:
titleredflag5
root(hd0,1)
kernel(hd0,1)/linux/vmlinuz
initrd(hd0,1)/linux/initrd.img
title這行就是我們在開機(jī)時(shí),所看到的菜單,顯示的就是redflag5,要加在title的后面,title是必須保留的,是grub的語法的標(biāo)簽,我們可以在title后面寫我們想要加的東西,這是自己可
以定義的,比如titleredflag5也是可以的;
root(hd0,1)這行能用以root開頭,然后加一個空格,至于您把vmlinuz和initrd.img放在哪個分區(qū)了,用打開wingrub,點(diǎn)tools=》partioinlist(分區(qū)列表)中查到
kernel這行,以kernel開頭,然后加一個空格,主要說的是vmlinuz文件放在哪個分區(qū),哪個目錄了;除了kernel后面有一個空格外,在這行中,其它地方?jīng)]有空格;這行說的是我們用放在(hd0,1)分區(qū)下的linux目錄中的kernel來內(nèi)核來啟動;
initrd這行,和kernel那行類似;沒有什么難的,自己的文件放在哪個分區(qū),哪個目錄了,自己最知道吧;
格式二:比較麻煩一點(diǎn):理解著看吧;
代碼:
titleredflag5
root(hd0,1)
kernel/linux/vmlinuzroroot=/dev/hda6
initrd/linux/initrd.img
title這行就是我們在開機(jī)時(shí),所看到的菜單,顯示的就是redflag5,要加在title的后面,title是必須保留的,是grub的語法的標(biāo)簽,我們可以在title后面寫我們想要加的東西,這是自己可以定義的,比如titlefc4setup也是可以的;
root這行,在本例中是root(hd0,1),這行就是我們打開wingrub,點(diǎn)tools=》partioinlist(分區(qū)列表)中查到的;我們通過這個知道我們把解壓出來的vmlinuz和initrd.img所處的分區(qū)和路徑
【 使用教程】
解壓并復(fù)制目錄下的menu.lst還有chinese文件夾中的grub.exe、grldr到系統(tǒng)盤


打開系統(tǒng)盤顯示隱藏文件與受系統(tǒng)保護(hù)的文件
工具--文件夾選項(xiàng)--查看 取消勾選 "隱藏受保護(hù)的操作系統(tǒng)文件" 隱藏文件和文件夾 中點(diǎn)中 顯示所有文件和文件夾


取消boot.ini的只讀屬性
取消系統(tǒng)盤下的boot.ini的只讀屬性、應(yīng)用--確定

在boot.ini中添加grub引導(dǎo)項(xiàng)
在boot.ini中添加c:\grldr="grub" 并把上面的 timeout=10

重啟電腦查看效果



































