2015年8月1日 星期六

YUMI 製作多重 Windows USB 開機

.

這是 USB 多重啟動製作工具 YUMI 的續篇。


要用 YUMI 來製作多重 Windows USB 開機,可以依循以下步驟:

1.
YUMI 先安裝 balder20.iso (只是先在USB上建立一個 YUMI 的檔案結構,
如不需要,可以在事後再把它刪除。balder20.iso 是 Free Dos)























2.
將多個 Windows ISO 檔 copy 到 /multiboot/ISOS

3.
開啟 /multiboot/syslinux.cfg,

加入

label System Tools
menu label Windows Installation ISOs ->
MENU INDENT 1
kernel vesamenu.c32
APPEND /multiboot/menu/windows.cfg

後,存檔。


4.
在  /multiboot/menu/ 建立 windows.cfg

# Menu Entry Created by Lance http://www.pendrivelinux.com for YUMI
default vesamenu.c32
prompt 0
menu title System Tools
menu background yumi.png
MENU TABMSG http://www.pendrivelinux.com
MENU WIDTH 72
MENU MARGIN 10
MENU VSHIFT 3
MENU HSHIFT 6
MENU ROWS 15
MENU TABMSGROW 20
MENU TIMEOUTROW 22
menu color title 1;36;44 #66A0FF #00000000 none
menu color hotsel 30;47 #C00000 #DDDDDDDD
menu color sel 30;47 #000000 #FFFFFFFF
menu color border 30;44 #D00000 #00000000 std
menu color scrollbar 30;44 #DDDDDDDD #00000000 none

label <-- back="" main="" menu="" p="" to="">kernel vesamenu.c32
append /multiboot/syslinux.cfg
MENU SEPARATOR

label Windows XP Installation ISO
menu label Windows XP Installation ISO
MENU INDENT 1
KERNEL /multiboot/grub.exe
APPEND --config-file=/multiboot/menu/windowsXP.lst

label Windows 7 Installation ISO
menu label Windows 7 Installation ISO
MENU INDENT 1
KERNEL /multiboot/grub.exe
APPEND --config-file=/multiboot/menu/windows7.lst

label Windows 8 x86 Installation ISO
menu label Windows 8 x86 Installation ISO
MENU INDENT 1
KERNEL /multiboot/grub.exe
APPEND --config-file=/multiboot/menu/windows8x86.lst

label Windows 8 x64 Installation ISO
menu label Windows 8 x64 Installation ISO
MENU INDENT 1
KERNEL /multiboot/grub.exe
APPEND --config-file=/multiboot/menu/windows8x64.lst

5.
分別在  /multiboot/menu/ 建立 windowsXP.lst 或 windows7.lst 或 windows8x86.lst
或 windows8x64.lst 或...

例如 windowsXP.lst:

default 0
timeout=0
title Windows XP x86 ISO
map --mem (md)0x800+4 (99)
map /multiboot/ISOs/WINXP_X86.ISO (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/multiboot/ISOs/WINXP_X86.ISO;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)



例如  windows7.lst :

default 0
debug off
set MYISO=WIN7_X86-X64.iso
dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\multiboot\\ISOs\\%MYISO%\r\n
map --mem (md)0x800+4 (99)
map /multiboot/ISOs/%MYISO% (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/multiboot/ISOs/%MYISO%;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)


例如  windows8x86.lst  :

debug off
set MYISO=win8_x86.iso
dd if=()/firadisk/auWin8.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\multiboot\\ISOs\\%MYISO%\r\n
map --mem (md)0x800+4 (99)
map /multiboot/ISOs/%MYISO% (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/multiboot/ISOs/%MYISO%;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)



 Win10 的 .lst 也可以如法泡製。



( /multiboot/ISOS  裡的各個 ISO 檔名需與 windowsXP.lst 、 windows7.lst 、 
windows8x86.lst、 windows8x64.lst...裡面的 .iso 檔名相呼應 )


6.
下載 FiraDisk 驅動程式。解開後,將 AutoUnattend.xml 檔案以及 FiraDisk 目錄 copy
到 USB 根目錄。


7.
完成。


啟動後可選多個 Windows 版本:



















實作經驗

xp 32bit + Win7 p 32bit

XP 可啟動安裝程序,但過程會出現藍畫面 (不知是不是 IDE/SATA 硬碟的問題?)。






















Win7 p 32bit 可完成安裝。

安裝過程會出現 與 firadisk 有關的 REPAIR WINDOWS? 的訊息,尚未知它的用意,
所以選 N。之後可順利完成安裝。

















暫時結論

其他各版本是否能順利安裝,仍待進一步驗證。

本方法不算是泡麵式的即沖即用。顯然還需要一些微調,因此,把它
視為研究用途會比較妥當。

本文主要是參考這裡




對多重 Windows 啟動有興趣的人,一定要試試 Easy2Boot 。













.







































4 則留言:

  1. Windows XP 的 AHCI 比較麻煩
    如果真的有需要 Windows XP 個人有二招鍵議:
    1. 用量產工具
    2. 用 Easy2boot + .imgPTN 的方式,除了 Windows XP 之外,還可以解決 UEFI 的問題

    有二點還要額外注意
    1. FAT32 最多只支援 4GB
    2. Linux-based 最新的開機方式都差不多,理論上都可以支援,但 BSD-based 就比較麻煩了

    回覆刪除
  2. 回覆
    1. google:yumi firadisk
      看能不能找到相關檔案。


      刪除