|
樓主 |
發表於 2011-1-23 20:11:47
|
顯示全部樓層
本帖最後由 bglmlm 於 2011-1-25 02:23 AM 編輯
【繁體的說明檔案】在readme-2ban.rar裏面!!【在3樓】
我看到簡體版的【就用 簡體---》繁體】的工具~來轉換!! 需要【grub。exe 與其指令 的繁體使用說明書】之朋友可以下載
大概有13.7萬字!!檔案是13.7k!! 所以下載後【可以慢慢看】!!看久了就習慣了^-^
ps:
(hd0,0)就是第一個開機硬碟 編號
(hd0,0)/boot/grub/menu.lst 《--》就是第一個開機硬碟 的目錄 /boot <-->可放許多 *.img 或*.ima 或 *.iso檔案
菜單==menu
===========================剪貼一小段的樣本~給大家看看!!中文化的說明書【果然是看的懂的】!!
ps:上次咱看的是 英文版的 >< 大概只看懂10%而已!!
================================================
回覆a471
中文版的應該比較 簡單易懂!! 不過要有 Dos的基礎!!【Disk Operating System】的基礎!!【大概是20年前的系統了!!】 》《
============正文開始
GRUB.EXE 用法:
GRUB [--bypass] [--time-out=T] [--hot-key=K] [--config-file=FILE]
旁路 暫停時間 熱鍵 配置文件
這里的 FILE ,例如,可以是 (hd0,0)/menu.lst
在 CONFIG.SYS 中,其配置行類似於:
install=c:\some\where\grub.exe --config-file=FILE
如果沒有使用選項,GRUB.EXE簡單的使用(hd0,0)/menu.lst
來作為配置文件,只要它存在的話。(註意!我們最終將默認的配
置文件從 (hd0,0)/boot/grub/menu.lst 變更為 (hd0,0)/menu.lst)
(更新於2006-12-23。參見更新3)
這里的分區(hd0,0)可以是一個Windows分區或者是一個linux分區,
或者是被 GRUB 支持的其他任意分區。
這里的FILE只接受GRUB風格的文件名。DOS風格的文件名不被調用
(很明顯,我們應該使用GRUB風格的文件名,原因是比如在Linux
ext2分區中不能使用DOS風格的文件名來訪問文件 )。
(參見更新2)
【更新:FILE 可以是菜單的內容。使用【分號】來分隔嵌入 FILE 中的命
令】。FILE 可以被一對雙引號括起來,示例:
GRUB --config-file="root (hd0,0);chainloader +1"
這條命令將啓動(hd0,0)上的系統。
另一個例子:
GRUB --config-file="reboot"
這條命令將令機器重啓。
再例如:
GRUB --config-file="halt"
這條命令將令機器關閉。
如果選項--bypass 被指定,GRUB將在暫停時間截止後從DOS退出。
選項'--time-out=T' 指定了以秒計時的暫停值。如果指定了--bypass
則T的默認值為5 ,而--bypass選項沒有被指定時默認值為0 。
【默認的熱鍵】值是 0x3920 (即空格鍵)。如果此鍵被按下,GRUB將正常
啓動。如果其他鍵被按下,GRUB 將立即終止並返回到DOS。參見下面
的“int16 鍵盤掃描碼”
每個選項最多只能被指定一次。
更新 2:DOS風格的文件名已經被支持(由John Cobb先生提供此補丁)。
如果 FILE 的【起始兩個字符】是【【“ #@ ”】】,那麼 FILE 中其餘的部分將被視
為一個【DOS風格的文件名】。例如:
GRUB --config-file="[email=#@c:\menu.lst]#@c:\menu.lst[/email]"
DOS風格的文件只有起始的4kB被使用。此文件應當是一個未被壓縮的文
本文件。
註意:你也可以在SHELL或者在CONFIG.SYS的INSTALL配置行使用‘DOS
風格文件直接訪問’。但不要在DEVICE 配置行使用它。DOS文檔中表述
了DOS設備驅動不能使用'打開文件'的DOS調用。
更新 3(2006-12-23): 作為默認,GRUB.EXE將按以下順序查找它的配置文件:
(DOS風格文件) .\menu.lst, 當前目錄下的MENU.LST。
(DOS風格文件) \menu.lst, 當前驅動器根目錄下的MENU.LST
(GRUB風格文件) /menu.lst, 啓動設備根目錄下的MENU.LST
默認的啓動設備還是(hd0,0)。
--------------------------------------------------------
更新 1 : 版本0.2.0 同時帶來一個新的東西。GRUB for NTLDR ,它能夠從
Windows NT/2000/XP的啓動菜單啓動到GRUB。複制GRLDR到Windows
NT/2000/XP的C盤根目錄,並在C:\BOOT.INI中加入這樣一行:
【【C:\GRLDR="Start GRUB"】】
這樣就完成了安裝。【【GRLDR應該與 BOOT.INI及NTLDR 位於相同的目錄】】。《------NTLDR 咱在許多【光碟離常看到】
註意 BOOT.INI 通常是隱藏的因而你要看見它必須取消隱藏。如果GRLDR
在一個NTFS分區,應該將它複制到一個【非NTFS分區】】的根目錄(並且menu.lst
文件應當同樣這樣做)。假如GRLDR被壓縮了,比如在NTFS分區中對它啓
用了壓縮的情況下,它將不能運行。
即使這個磁盤的驅動器號已經被Windows設備管理器改變為另外的不同
於 C 的盤號 ,你仍然需要在 BOOT.INI 中使用盤符 C ,否則,NTLDR
將查找不到 GRLDR 文件。
也就表示,如果你從一個軟盤上啓動NTLDR,你也需要把A:\BOOT.INI 《-----重要
中的 GRLDR 的所在行這樣寫:
C:\GRLDR="Start GRUB"
而不能象下面這樣使用盤符 A :
A:\GRLDR="Start GRUB"
(註意在 BOOT.INI 位於軟盤 A 的這個例子中,標記“C:\GRLDR”
實際將訪問 A:\GRLDR )
更新 2: GRUB for linux 也一起被引入到版本0.2.0。
你可以使用【使用linux的引導程序】 KEXEC,LILO,SYSLINUX 或者別的
GRUB來啓動它。(GRUB4LIN 已經合並到 GRUB.EXE 中)
從Linux中直接啓動到GRUB ,使用這樣一組命令:
kexec -l grub.exe
kexec -e
經由GRUB啓動到GRUB,使用如下的命令:
kernel (hd0,0)/grub.exe
boot
經由LILO啓動到GRUB,在lilo.conf中加入這樣幾行:
image=/boot/grub.exe
label=grub.exe
經由syslinux啓動到GRUB,在syslinux.cfg中加入這樣幾行:
label grub.exe
kernel grub.exe
LOADLIN在引導GRUB.EXE時可能會遇到問題,原因是grub.exe需要一些
未更改的原始的BIOS中斷向量,但是DOS破壞了這些中斷向量,而loadlin
在將控制權交給grub.exe前並沒有恢複它們。
更新 3: 從版本0.4.0開始,DOS下的GRUB支持內存驅動器。示例:
# boot into a floppy image
map --mem (hd0,0)/floppy.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
map --floppies=1
boot
由於鏡像將被拷貝到一個內存區域,所以鏡像本身可以是非連續的,
甚至可以是被gzip壓縮過的。
另一個例子:
map --mem=-2880 (hd0,0)/floppy.img (fd0)
這個內存驅動器(fd0)將占用至少1440 KB的內存。
這也對那些小於1440 KB的1.44M 軟盤鏡像有用。
再例如:
map --mem --read-only (hd0,0)/hd.img (hd1)
這個內存驅動器成為了一個硬盤驅動器,並且只讀。
這表示你不能向這個(hd1)中寫入數據。
你可以同時使用多個內存驅動器和多個原來的基於磁盤虛擬的仿真驅動器。
如果BIOS不支持中斷int15/EAX=e820h,你將不能使用任何內存驅動器。
更新 4: 對於內存驅動器仿真,一個單一的分區鏡像可以被轉換為整個硬盤鏡像來《---【【這個好用】】
map --mem (hd0,7)/win98.img (hd0)
map --hook
chainloader (hd0)+1
rootnoverify (hd0)
map --harddrives=1
boot
這里的win98.img是一個頭部不含主引導記錄和分區表的分區鏡像。
GRUB for DOS 確實會為這個內存驅動器(hd0)建立一個MBR和分區表。
更新 5: 現在【GRLDR】可以作為一個非糢擬糢式的【【可啓動光盤】的啓動映像文件】來使 《---就是說*.iso咱要用【GRLDR】的指令
用。Linux用戶使用示例:
mkdir iso_root
cp grldr iso_root
mkisofs -R -b grldr -no-emul-boot -boot-load-seg 0x1000 -o bootable.iso iso_root
另一種選擇是,grldr也可以用同樣的方法作為stage2_eltorito來使用。
-boot-info-table選項是被允許使用的,但你可以省略它:
mkdir iso_root
cp grldr iso_root
mkisofs -R -b grldr -no-emul-boot -boot-load-size 4 -o grldr.iso iso_root
也要註意上面的可啓動iso鏡像是使用-boot-load-seg 0xHHHH選項來建立的話,
就必須令HHHH大於或者等於1000(十六進制)
如果HHHH小於1000(十六進制),虛擬機 QEMU 會死機。這是QEMU的一個缺陷。一
個grldr.iso鏡像可以使用也可以不使用-boot-load-seg 0xHHHH選項來創建。
【menu.lst文件應該被放置在【光盤的根目錄】。】
.
..
.
.
.
.
.
.===============================另一段文章。。
這里用一些示例來演示磁盤仿真命令的用法:
1. 仿真硬盤分區C:為軟驅A:並從C:中啓動win98:
map --read-only (hd0,0)+1 (fd0)
chainloader (hd0,0)+1
rootnoverify (hd0)
boot
在上面的示例中,(hd0,0)是一個裝有win98的C:盤 。當win98啓動完成後,你會發
現A:中包含了C:的所有文件,而且如果你刪除A:中的文件,C:上的相應文件也會消
失。
在map命令行中,(hdm,n)+1式的寫法被解釋成代表整個(hdm,n)分區,而不僅僅是
此分區的第一扇區。
2. 將硬盤分區C:仿真為軟驅A:並從A:中啓動win98:
map --read-only (hd0,0)+1 (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
map --floppies=1
boot
在“map --hook”命令之後,仿真立即生效,即使是在GRUB的命令行糢式中。
Note that the (fd0) in "chainloader (fd0)+1" is the emulated virtual
floppy A:, not the real floppy diskette(because map is hooked now).
註意“chainloader (fd0)+1” 中的(fd0)是仿真後的虛擬軟驅 A:,而不是真
實的軟盤(因為映射現在已經被掛載了)。
3. 仿真鏡像文件為軟驅A:並從C:盤中啓動win98:
map --read-only (hd0,0)/floppy.img (fd0)
chainloader (hd0,0)+1
rootnoverify (hd0)
map --floppies=1
map --harddrives=1
boot
4. 仿真硬盤分區為第一硬盤並從中啓動DOS:
map --read-only (hd2,6)+1 (hd0)
map --hook
chainloader (hd0,0)+1
rootnoverify (hd0)
map --harddrives=1
boot
在這個示例中,(hd2,6)+1代表BIOS序號為3的(hd2)硬盤中的,擴展的DOS邏輯分區。
如果一個DOS分區被仿真為一個硬盤,GRUB for DOS將首先定位分區表,通常,
是在DOS分區的開頭63個扇區中。如果那里沒有分區表,GRUB for DOS將拒絕仿真。
5. 仿真一個鏡像文件為第一硬盤然後從中啓動DOS:
map --read-only (hd0,0)/harddisk.img (hd0)
chainloader --load-length=512 (hd0,0)/harddisk.img
rootnoverify (hd0)
map --harddrives=1
boot
如果一個鏡像文件被仿真為硬盤,此鏡像文件必須包含MBR。也就是說,
HARDDISK.IMG的第一扇區必須包含被仿真的虛擬硬盤的分區表。
註意: BIOS數據區中的軟盤和硬盤的總數在映射期間沒有被改變。當主板上沒有配置真
實的軟驅時,你通常應該專門使用【【諸如‘map --floppioes=’以及
map --harddrives=’來設置它們】】。如果不這樣做,DOS可能會啓動失敗。
‘map --status’可以報告出一些有價值的東西。同時要註意‘map --floppies=’
和‘map --harddrives=’需要在沒有執行映射前單獨使用。
版本0.4.2引入了一個新參數,memdisk_raw,用以糢擬和內存驅動器類似的原生糢式。
如果BIOS不支持中斷int15/87h,或者int18/87h的支持有缺陷,你應該在任何內
存盤被使用前設置這個變量。這里是一個示例:
map --memdisk-raw=1
map --mem (hd0,0)/floppy.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
boot
如果你碰到內存驅動器故障而又沒有使用map --memdisk-raw=1時,你應當用
‘map --memdisk-raw=1’來嘗試一次。
你一執行‘map --memdisk-raw=0’之後,就應該執行一次‘map --unhook’
(如果需要的話在這之後再執行‘map --hook’)。
更新:memdisk_raw 現在默認值為1 。如果你希望使用中斷int15/87h來訪問內存
驅動器,你應當令‘map --memdisk-raw=0 ’。
--------------------------------------------------------
任意大小的軟盤或硬盤可以被 GRUB for DOS 0.2.0 版仿真。
鏡像文件必須是連續的,否則GRUB for DOS 將拒絕執行。
‘blocklist’命令可以列舉一個文件的碎片或者分塊。
在GRUB提示符下輸入“help map”可以獲得簡要的命令說明。
這樣的形式
map ... (fd?)
是一個軟盤仿真,而下面的形式
map ... (hd?)
是一個硬盤仿真。
使用硬盤仿真時,基於安全因素最好不要去啓動Windows 。
Windows甚至可能會破壞掉所有的數據和你硬盤上的所有資料!!!!!!!!
關於--mem的更新 :當使用--mem時,甚至是在進入Windows的時候,它看
來都相當安全。Win98可以正常運行內存驅動器。
Windows NT/2000/XP不能識別仿真的驅動器,不管是否使用了--mem選項。 |
|