grldr(GRUB,grub4dos)使用方法簡(jiǎn)介 收藏
一 引言:
grldr 是grub里面的一個(gè)文件,對(duì)grub不熟悉的朋友可能不知道,但是如果你用過(guò)嬴政一鍵GHPST、MAXDOS、矮人DOS工具箱等等軟件,你就應(yīng)該知道這個(gè)名字:這些軟件無(wú)一例外都是使用grub或者grldr引導(dǎo)他們保存在你硬盤(pán)的軟盤(pán)鏡像或者系統(tǒng)引導(dǎo)文件的。
沒(méi)有g(shù)rub和grldr(包括avldr、isomenu等等都是由grub或者grldr派生出來(lái)的),就不會(huì)由上述這些軟件的存在。
二 grldr使用方法:
使用起來(lái)很簡(jiǎn)單的,但是如果沒(méi)有接觸過(guò)的話你會(huì)沒(méi)有任何頭緒.其實(shí)和winPE一樣
下載地址:http://disk22.sh.com/mypane.aspx?down=ok&filename=grlder.rar&filepath=li-yangzhao%2fgrlder.rar
或者下載個(gè)深度一鍵恢復(fù) 研究下也行,那里的文件比較全.
1、文件存放位置
把grldr及菜單配置文件menu.lst復(fù)制到系統(tǒng)盤(pán)任意目錄(以C盤(pán)根目錄為例,其它目錄只需要加入路徑即可。其中g(shù)rldr會(huì)自動(dòng)搜索菜單配置文件并加載,但是menu.lst最好存放在C盤(pán)根目錄,免得到時(shí)候搜索不到不能加載引起錯(cuò)誤)。
把需要grldr引導(dǎo)的文件(如DOS.IMG、GHOST83.IMG等鏡像文件)保存在硬盤(pán)。
2.下面是一個(gè)menu.lst的例子。(以#開(kāi)始的行,表示注釋?zhuān)粓?zhí)行)
# 默認(rèn)延遲時(shí)間(秒)
timeout 30
# 第一項(xiàng)為默認(rèn)值
default 0
# 設(shè)置圖形背景文件
splashimage (hd0,0)/boot/grub/xp2008.gz
# 設(shè)置中文支持的字體文件
fontfile (hd0,0)/boot/grub/fonts
title 使用map啟動(dòng)本地硬盤(pán)上的瑞星殺毒軟盤(pán)鏡像文件
map (hd0,0)/boot/grub/rav.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
title 使用memdisk啟動(dòng)本地 Win98 軟盤(pán)鏡像文件
kernel (hd0,0)/boot/grub/memdisk.gz
initrd (hd0,0)/boot/grub/win98.img
title 使用memdisk啟動(dòng)本地硬盤(pán)上的瑞星殺毒軟盤(pán)壓縮鏡像文件
root (hd0,0)
kernel /boot/grub/memdisk.gz c=80 h=12 s=36 floppy
initrd /boot/rav.zip
title 啟動(dòng)第一主分區(qū)(hd0,0)上的操作系統(tǒng)
rootnoverify (hd0,0)
makeactive
chainloader +1
title 啟動(dòng)第二主分區(qū)(hd0,1)上的操作系統(tǒng)
rootnoverify (hd0,1)
makeactive
chainloader +1
title 重啟
reboot
title 關(guān)機(jī)
halt
3.引導(dǎo):
3.1 通過(guò)Windows NT的啟動(dòng)菜單進(jìn)入grub4dos
將grldr文件復(fù)制到c:\,去掉boot.ini的只讀屬性,然后修改c:\boot.ini文件,在boot.ini的最后面加一行:
c:\grldr="Start GRUB"
并將boot.ini中的timeout值設(shè)置為大于0的數(shù)字,如:timeout=5,然后保存boot.ini,改回只讀屬性。
編輯boot.ini前,可在cmd下輸入:
attrib -s -r -h c:\boot.ini
解除boot.ini的只讀屬性,編輯完后輸入:
attrib +s +r +h c:\boot.ini
恢復(fù)boot.ini的原有屬性。
這樣,編輯完重新啟動(dòng)計(jì)算機(jī),在NT的啟動(dòng)菜單就會(huì)出現(xiàn)“Start GRUB”這一項(xiàng),選擇該項(xiàng)即可進(jìn)入grub4dos的環(huán)境。
此方法的優(yōu)點(diǎn)是:不需要修改MBR。
初學(xué)者使用grub一般都需要grub菜單,把準(zhǔn)備好的menu.lst文件放到C:\下(也可放到其它分區(qū)根目錄或其它指定目錄)。
3.2 通過(guò)DOS啟動(dòng)grub
將機(jī)器通過(guò)任何可能的方式(軟盤(pán),U盤(pán),光盤(pán)等)啟動(dòng)到DOS環(huán)境(最好是純DOS環(huán)境,即不加載任何驅(qū)動(dòng)程序和TSR程序的DOS環(huán)境),然后在DOS下或者AUTOEXEC.BAT中運(yùn)行g(shù)rub.exe,即可進(jìn)入grub。
也可在DOS/Windows9x的CONFIG.SYS中使用下列任一方式啟動(dòng)grub。
DEVICE=GRUB.EXE
INSTALL=GRUB.EXE
SHELL=GRUB.EXE
此方法的優(yōu)點(diǎn)是:不需要修改MBR;可根據(jù)需要在腳本或者其它DOS程序中啟動(dòng)GRUB4DOS。
菜單文件menu.lst可保存在grub文件所在目錄或其它指定路徑。
3.3 通過(guò)mbr啟動(dòng)grub
通過(guò)軟件包里的bootlace.com(可運(yùn)行于DOS/Win9x)安裝GRLDR引導(dǎo)記錄到硬盤(pán)或者硬盤(pán)映像文件的主引導(dǎo)記錄,或者安裝到軟盤(pán)或者軟盤(pán)映像的引導(dǎo)扇區(qū)。電腦啟動(dòng)時(shí),通過(guò)擊熱鍵(默認(rèn)為空格鍵,可自定義)來(lái)啟動(dòng)grub。
比如:
在DOS下安裝GRLDR代碼到主引導(dǎo)記錄:
bootlace.com 0x80
在DOS下安裝GRLDR代碼到軟盤(pán):
bootlace.com --floppy --chs 0x00
在DOS下安裝GRLDR代碼到軟盤(pán)映像:
bootlace.com --floppy --chs floppy.img
我所使用的命令為:
bootlace --force-backup-mbr --boot-prevmbr-first --time-out=3 --hot-key=0x3920 --mbr-disable-floppy 0x80
表示安裝GRLDR代碼到MBR時(shí),備份原MBR(--force-backup-mbr),默認(rèn)啟動(dòng)原MBR,即啟動(dòng)原windows xp系統(tǒng)(--boot-prevmbr-first),等待時(shí)間3秒(--time-out=3),熱鍵為空格鍵(--hot- key=0x3920), 不搜索軟盤(pán)上的GRLDR(--mbr-disable-floppy)。
也就是說(shuō)啟動(dòng)時(shí)等待3秒,3秒內(nèi)不擊熱鍵的話,啟動(dòng)windows xp;3秒內(nèi)擊熱鍵則啟動(dòng)grub4dos。
bootlace的其它參數(shù)及自定義熱鍵用法可參看readme.txt文件。
裝入mbr后,再將grldr和menu.lst文件復(fù)制到某分區(qū)的根目錄(現(xiàn)在支持的文件系統(tǒng)是FAT12,FAT16, FAT32, NTFS,EXT2 or EXT3 的分區(qū)。對(duì)于Windows用戶,最好是fat分區(qū)),menu.lst也可保存到其它指定位置。
此方法的優(yōu)點(diǎn)是:不依賴(lài)于操作系統(tǒng);能夠自動(dòng)搜索硬盤(pán)上各個(gè)分區(qū)的grldr文件。
另外,2000/xp/2003/vista環(huán)境下可用另一軟件 grubinst 來(lái)把GRLDR引導(dǎo)記錄安裝到硬盤(pán)的MBR。grubinst具有圖形界面和命令行兩種工作模式供選用,并附有比較詳細(xì)的使用說(shuō)明,很易于使用。
4.制作 GRUB的 splash 背景圖
GRUB 背景圖片的要求:分辨率640x480,14色,XPM格式。
支持 .gz 壓縮。
制作環(huán)境: linux下(其實(shí)windows下也可以制作,用IMAGEMAGICK. 但是convert后用圖像軟件看是沒(méi)問(wèn)題,但是引導(dǎo)時(shí),失真的很厲害,用其他軟件制作,背景根本出不來(lái),在linux下制作真的很簡(jiǎn)單,呵呵為了做這個(gè),只能安裝個(gè)虛擬的linux來(lái)做.)
方法1:用 convert 命令
首先需安裝一個(gè) ImageMagick 軟件。 若用的是 ubuntu 或 debian 就很方便了,源里就有。
先把圖片轉(zhuǎn)成 640x480 分辨率,再運(yùn)行 convert -colors 14 xxx.jpg splashimage.xpm ,把生成的 splashimage.xpm 拷貝到某目錄下,比如 (hd0,6)/boot/splash/
再往 menu.lst 中相應(yīng)地添上一句: splashimage (hd0,6)/boot/splash/splashimage.xpm
就好了。
這個(gè)方法在windows下做,失真的很厲害,可能是我不會(huì)做.
方法2:
用GIMP(呵呵,和windows下用ps是一樣的.不如在windows下做.不推薦)
一個(gè)關(guān)鍵:須調(diào)成 索引色 顯示,否則無(wú)法調(diào)整顏色數(shù)
方法3: (推薦)
在windows下用Ps或者其他的圖像軟件把圖像修改成640*480 14位色的(其實(shí)16位也可以),然后上傳到linux下,用GIMP另存下就可以了.方便快捷.
5、GRUB的命令
GRUB包含了許多不同的命令,它們可以在命令行接口中以交互的方式執(zhí)行。其中的一些命令能接在命令名后面的選項(xiàng),這些選項(xiàng)用空格隔開(kāi)。
下面的列表給出了最有用的一些命令:
·boot - 引導(dǎo)先前已經(jīng)被指定并載入的操作系統(tǒng)或鏈?zhǔn)窖b載程序。
·chainloader - 將指定的文件作為一個(gè)鏈?zhǔn)窖b載程序載入。為了獲取在一個(gè)指定分區(qū)第一扇區(qū)內(nèi)的文件,使用+1作為文件名。
·displaymem - 顯示當(dāng)前內(nèi)存的使用情況,這個(gè)信息是基于BIOS的。這個(gè)命令有助于確定系統(tǒng)在引導(dǎo)前有多少內(nèi)存。
·initrd - 使用戶能夠指定一個(gè)在引導(dǎo)時(shí)可用的初始RAM盤(pán)。當(dāng)內(nèi)核為了完全引導(dǎo)而需要某些模塊時(shí),這是必需的。
·install p - 安裝GRUB到系統(tǒng)的主引導(dǎo)記錄。這個(gè)命令允許系統(tǒng)重啟時(shí)出現(xiàn)GRUB接口。
警告:install命令將覆蓋主引導(dǎo)扇區(qū)中的其他信息。如果命令被執(zhí)行,那么除了GRUB信息之外的其他用于引導(dǎo)其他操作系統(tǒng)的信息都將丟失。在執(zhí)行這條命令前,確定你對(duì)它有正確的了解。
這條命令可以用幾種不同的方式進(jìn)行配置。然而,它都要求指定。表示一個(gè)設(shè)備,分區(qū)和文件,在那里可以找到第一個(gè)引導(dǎo)裝載程序的映象,比如 (hd0,0)/grub/stage1。另外,也指定了第一步引導(dǎo)裝載程序應(yīng)該被安裝的硬盤(pán),如(hd0)。
選項(xiàng)告訴第一步引導(dǎo)裝載程序第二步引導(dǎo)裝載程序位于什么地方,例如(hd0,0)/grub/stage2。p選項(xiàng)告訴install命令菜單配置文件被指定在部分,比如說(shuō)(hd0,0)/grub/grub.conf。
·kernel - 當(dāng)使用直接載入方式引導(dǎo)操作系統(tǒng)時(shí),kernel命令指定內(nèi)核從GRUB的根文件系統(tǒng)中載入。options選項(xiàng)是跟在kernel命令后面,在內(nèi)核載入時(shí)傳給內(nèi)核。
在Red Hat Linux中,一個(gè)kernel命令的例子看起來(lái)象下面的形式:
kernel /vmlinuz root=/dev/hda5
上面這行表明了vmlinuz文件是從GRUB的根文件系統(tǒng)載入的,如(hd0,0)。同時(shí),一個(gè)選項(xiàng)也被傳給了內(nèi)核。它指出當(dāng)Linux內(nèi)核載入時(shí),內(nèi)核的根文件系統(tǒng)應(yīng)該是位于hda5,第一個(gè)IDE硬盤(pán)的第五個(gè)分區(qū)。如果有必要的話,多個(gè)選項(xiàng)可以被放在這個(gè)選項(xiàng)后面。
·root - 將GRUB的根分區(qū)設(shè)置成特定的設(shè)備和分區(qū),比如說(shuō)(hd0,0)。并掛入這個(gè)分區(qū),這樣文件可以被讀取。
·rootnoverify - 做root命令同樣的事情,只是不掛入分區(qū)。
除上面所述外,還有更多的命令可用。輸入info grub,得到一個(gè)所有命令的完全列表。
6、GRUB的菜單配置文件
配置文件在GRUB菜單接口中,創(chuàng)建用于引導(dǎo)操作系統(tǒng)的列表。配置文件可以允許用戶選擇執(zhí)行事先設(shè)置好的一組命令。這些命令既包括前面給出的命令,也包括一些只用于配置文件的命令。
配置文件的專(zhuān)用命令
下面這些命令只用于GRUB的菜單配置文件:
·color - 設(shè)定在菜單中使用的顏色,一種是作為前景色,一種作為背景色??梢院?jiǎn)單地使用顏色名稱(chēng),如red/black。比如:
color red/black green/blue
·default - 默認(rèn)項(xiàng)目的標(biāo)題名稱(chēng)。如果菜單接口超時(shí),那它將被載入。
·fallback - 當(dāng)這個(gè)命令被使用時(shí),如果第一次嘗試失敗,那么這個(gè)項(xiàng)目的標(biāo)題名稱(chēng)將被試用。
·hiddenmenu - 這個(gè)命令被使用時(shí),它不顯示GRUB菜單接口,在超時(shí)時(shí)間過(guò)期后載入默認(rèn)項(xiàng)。用戶通過(guò)按[Esc]鍵,可以看到標(biāo)準(zhǔn)的GRUB菜單。
·password - 這個(gè)命令被使用時(shí),它可以防止不知道口令的用戶編輯菜單的項(xiàng)目。
作為附加選項(xiàng),可以在后面指定一個(gè)后備的菜單配置文件。因此,如果口令被知道,GRUB將重新啟動(dòng)第二步的引導(dǎo)裝載程序,并使用這個(gè)后備的配置文件來(lái)建立菜單。如果這個(gè)后備文件不在命令中指出,那么知道口令的用戶能夠編輯當(dāng)前的配置文件。
·timeout - 這個(gè)命令設(shè)定了在GRUB載入由default命令指定的項(xiàng)目前的時(shí)間間隔,以秒為單位。
·splashimage - 它指定在GRUB引導(dǎo)時(shí)所使用的屏幕圖像的位置。
·title - 設(shè)定用來(lái)裝載一個(gè)操作系統(tǒng)的一組特定命令的標(biāo)題。
字符#用來(lái)在菜單配置文件放置注釋。
配置文件的結(jié)構(gòu)
設(shè)置GRUB菜單接口全局參數(shù)的命令被放在文件的頂部,接下來(lái)的是用于各個(gè)操作系統(tǒng)引導(dǎo)的不同項(xiàng)目。
一個(gè)非?;镜挠糜谝龑?dǎo)Red Hat Linux或Microsoft Windows 2000的GRUB菜單配置文件可能如下所示:
default=linux
timeout=10
color=green/black light-gray/blue
# section to load linux
title linux
root (hd0,1)
kernel /vmlinuz root=/dev/hda5
boot
# section to load Windows 2000
title windows
rootnoverify (hd0,0)
chainloader +1
這個(gè)文件告訴GRUB建立一個(gè)以Red Hat Linux為默認(rèn)操作系統(tǒng)的菜單,設(shè)定10秒后自動(dòng)引導(dǎo)。這里給出了2個(gè)部分,每個(gè)部分對(duì)應(yīng)于一個(gè)操作系統(tǒng)項(xiàng)目,每個(gè)部分都包含了指向操作系統(tǒng)硬盤(pán)分區(qū)表的命令