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


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


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

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

重啟電腦查看效果



































