本帖最後由 阿達金田一 於 2016-4-22 18:44 編輯  
 
filesystem type is iso9660, using whole disk 
iso9660 是光碟格式 ... 
這應該是 root (hd32) 指令的回應... 
而這回應表示 root (hd32) 是成功的 
而 (hd32) 也的確 map 成功...不然就不是 iso9660 
所以不排除...你 hddreg.iso 有問題...又或者是你 grub4dos 的問題 
我前們有提供現成的 範例 可以下載...你沒下載嗎... 
個人建議...你不熟的話...先用 vbox 或 vmware 之類虛擬PC ... 來測試你自己搞的 grub4dos 開機 
沒問題...在搞到 usb 上 
 
你用的grub4dos 是那一版的...usb 開機是怎麼做的 
假定 /iso/hddreg.iso 在 (hd0,0) 
以下是 grub4dos 正常 0.46a 2016-03-04 版 指令模式下的應該有的情況 (訊息上會因實際情況和環境可能有小差異) 
grub> find --set-root /iso/hddreg.iso 
(hd0,0)  
grub> map --mem /iso/hddreg.iso (hd32) 
grub> map --hook 
grub> root (hd32) 
Filesystem type is iso9660_Joliet, using whole disk 
grub>chainloader 
 
Load segment: 0x7C0      System Type: 0x0     Sector Count: 0x1 
Load RBA: 0x1B  Boot Type:2 = 1.44M floppy 
grub>boot  
另外  
unrecognized device string,or you omitted the required DEVICE part which should lead the filename... 
這應該是你指令下錯了...例如...下成 
map --mem iso/hddreg.iso (hd32) 
這指令是錯誤的...  iso 前應該要有 / 
map --mem /iso/hddreg.iso (hd32) 
 
grub4dos 指令不同於 CMD ... 也許有些地方可能相似(這也只是以大多數人習慣)...但還是不一樣 
例如...有些情況下...大小寫 不同都會照成 指令執行 上的差異或錯誤 (不過這主要是用在 光碟 時...因為光碟格式的問題才比較容易發生) 
grub 指令...有些可以省略 (裝置位置) ... 這時會以 root 所設定的裝置為主 
例如 root 是 (hd0,0) 時 
map --mem (hd0,0)/iso/hddreg.iso (hd32) 
和 
map --mem /iso/hddreg.iso (hd32) 
沒什麼不同... (hd0,0) 可以省略...但 /iso/hddreg.iso 還是造打... / 不可省略 
 
通常習慣用 find --set-root  來找到檔順便設定 root 
 |