如何製作一個通用的多系統安裝U盤七(Windows相關配置)

Windows的相關配置

我們使用GRUB4DOS來引導安裝Windows ISO,有幾個問題要注意:

1. windows xp 和 windows 2003 系統安裝需要注意的事項。

    第一個步驟拷貝完文件後系統重啓時要再次進入U盤安裝界面,選擇Windows菜單的第二步來繼續安裝。

    第二步通過映射鏡像到虛擬的cd-rom中使系統繼續安裝,這是操作系統特性所決定的。

    如果在第一步的時候Windows出現7B錯誤,可以使用1A的步驟把ISO完全加載進內存再次嘗試。

    2A步驟適用於內存較小的系統。直接映射ISO文件,在有些系統上可能無法工作。

2. 在安裝Windows Vista--Windows 2012 系統的時候,在安裝之前應該有一個cmd窗口加載Firadisk驅動並加載ISO。

3. FiraDISK在加載ISO的時候需要一個可移動的U盤,WinPE需要能夠發現此U盤上的AutoUnattend.xml文件。

4. Windows 8 和 2012 的版本是通過密鑰來決定的。也可以修改\sources\ei.cfg來定義版本。

5. 安裝後一定要使用正版的序列號激活喲。


Windows 安裝菜單

wKiom1RykQzwGhwGAAWc-s08z4Y863.jpg


Windows的ISO鏡像放置在/ISO目錄下,如圖:

wKiom1Rq97jRPNX0AACScUjJUro489.jpg


windows主菜單

/boot/config/windows.cfg(部分)

include /boot/config/common.cfg  #包含公用配置
default windows864  #默認系統
label pciid
menu label List Mass Storage PCI IDs (run checkpci from FreeDos) #檢測存儲的PCI ID號碼
kernel /boot/grub/grub.exe #鏈式啓動grub.exe
append --config-file="map --mem /ISO/tools/PCIID.ima.gz (fd0);map --hook;root (fd0);chainloader (fd0)+1"  #直接附加配置文件,映射映像文件爲軟盤,並啓動之

menu separator

label windows732
text help
request /ISO/win732.iso
endtext
menu label INSTALL Windows 7 32-bit
KERNEL /boot/grub/grub.exe
APPEND --config-file=/boot/grub/windows/win732.lst #配置文件全部單獨出來,通過GRUB4DOS加載

menu separator

label windows864
text help
This will install Windows 8 64-bit to your hard disk;Request /ISO/windows864.iso
endtext
menu label INSTALL Windows 8 64-bit
KERNEL /boot/grub/grub.exe
APPEND --config-file=/boot/grub/windows/win864.lst #windows8配置文件

menu separator

label Windowsxp641
text help
request /ISO/winxp64.iso
endtext
menu label Windows XP 64-Bit Installation ISO Part1  #XP安裝第一步
KERNEL /boot/grub/grub.exe
APPEND --config-file=/boot/grub/windows/winxp641.lst #第一步配置文件

label Windowsxp642
menu label Windows XP 64-Bit Installation ISO Part2  #XP安裝第二步
KERNEL /boot/grub/grub.exe
APPEND --config-file=/boot/grub/windows/winxp642.lst #第二步配置文件

label Windowsxp643
text help
INSTALL XP - STEP 1A (USE IF PREVIOUS STEP 1 GAVE BSOD 7B ERROR)
XP Setup from ISO file using FiraDisk
Remember to select both AHCI driver AND FiraDisk driver!!!
endtext
menu label Windows XP 64-Bit Installation ISO SETP 1(IF 7B Error) #XP安裝1A
KERNEL /boot/grub/grub.exe
APPEND --config-file=/boot/grub/windows/winxp643.lst #1A配置文件

label Windowsxp644
text help
INSTALL XP - STEP 2A FOR LOW RAM SYSTEMS (FASTER)
direct ISO map,Does not work on some systems - e.g. some Atom CPU based netbooks
endtext
menu label  Windows XP 64-Bit Installation ISO STEP 2(LOW RAM) #XP安裝1B
kernel /boot/grub/grub.exe
append --config-file=/boot/grub/windows/winxp644.lst  #2A配置文件


Windows安裝全部是通過Grub4dos來進行的,全部配置文件都放在/boot/grub/windows下。我們看幾個典型的。

/boot/grub/windows/win732.lst

set MYISO=win732.iso  #設置windows 7的iso名稱
dd if=()/firadisk/au.xml of=()/AutoUnattend.xml #將win7的自動應答文件複製到U盤根目錄
echo 1 && pause #在此調試,正常後可移除,回車即可
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD  #佔位文件
echo 2 && pause #在此調試,正常後可移除
write ()/firadisk/ISONAME.CMD SET MYISO=\\iso\\%MYISO%\r\n #設置win7 的 ISO路徑
echo 3 && pause  #在此調試,正常後可移除
map --mem (md)0x800+4 (99)  #映射4個扇區的內存驅動器,設備號爲99
echo 4 && pause  #在此調試,正常後可移除
map /ISO/%MYISO% (0xff) || map --mem /ISO/%MYISO% (0xff) #映射iso到cdrom
echo 5 && pause  #在此調試,正常後可移除
map (hd0) (hd1)  #映射硬盤0爲硬盤1
map (hd1) (hd0)  #映射硬盤1爲硬盤0
map --hook       #使映射生效
echo 6 && pause  #在此調試,正常後可移除
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/%MYISO%;\n\0  #寫firadisk的選項到99號設備
echo 7 && pause  #在此調試,正常後可移除
chainloader (0xff)/BOOTMGR || chainloader (0xff)  #鏈式加載虛擬光驅的Windows啓動文件

/boot/grub/windows/win864.lst

set MYISO=windows864.iso
dd if=()/firadisk/auWin8.xml of=()/AutoUnattend.xml #Windows 應答文件,包括了在WINPE第一階段尋找U盤和調用firadisk驅動加載ISO文件。Windows 8和2012等必須要有一個密鑰才能安裝。
set KEY=windows 試用版密鑰   #如果要安裝一個已經獲取密鑰的正式版win8,請在此輸入
cat --locate=AAAAAA --replace=%KEY% /AutoUnattend.xml > nul #替換試用版密鑰
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD  #以下同win7
write ()/firadisk/ISONAME.CMD SET MYISO=\\iso\\%MYISO%\r\n
map --mem (md)0x800+4 (99)
map /ISO/%MYISO% (0xff) || map --mem /ISO/%MYISO% (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/%MYISO%;\n\0
chainloader (0xff)/BOOTMGR || chainloader (0xff)

/boot/grub/windows/winxp1.lst

find --set-root --ignore-floppies --ignore-cd /drivers/p41032.ima.gz #查找驅動盤,驅動盤內容可以隨需要添加,主要包含winvblock和firadisk的驅動。
map --mem /drivers/p41032.ima.gz (fd0)  #映射到軟驅0
map --mem /drivers/p41032.ima.gz  (fd1) #映射到軟驅0
map  /ISO/winxpsp2.iso (0xff) || map  --mem /ISO/winxpsp2.iso (0xff)  #加載ISO文件
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
root (0xff)  #設置根目錄在光驅(0xff)
chainloader (0xff)/i386/setupldr.bin || chainloader (0xff)/I386/SETUPLDR.BIN || chainloader (0xff)    #加載光驅下的windows安裝文件,多種錯誤嘗試
pause If you have an AHCI HDD you MUST press F6 when prompted, then hit S to select WinVBlock or FiraDisk (recommended) driver, then hit S again to select your AHCI driver (e.g. Atom Netbook=WinVBlock+ICH7R/DH, DQ67 series 6=FiraDisk+Desktop,Workstation,Server Express) #推薦安裝基本的winvblock驅動和firadisk驅動,並安裝符合自己主板的ahci驅動。如果是ide硬盤,那就不需要了
pause Now quickly hit [Enter] twice (and then F6 if you need to install an AHCI driver) ... #在這個提示後就會馬上出現按F6加載驅動的界面,因爲很快就過去了所以要抓緊多按幾下。

/boot/grub/windows/winxp2.lst

find --set-root --ignore-floppies --ignore-cd /drivers/p41032.ima.gz
# we must load the ISO into memory, so it will be slow to load here ...
map --mem /ISO/winxpsp2.iso (0xff) || map  /ISO/winxpsp2.iso (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
rootnoverify (hd0,0)
chainloader (hd0)+1
pause Press ENTER and then unplug this USB drive... #映射ISO到內存後就可以拔掉U盤繼續安裝了

/boot/grub/windows/winxp1a.lst(與winxp1.lst基本相同,只是全部加載到內存)

find --set-root --ignore-floppies --ignore-cd /drivers/p41032.ima.gz
map --mem /drivers/p41032.ima.gz (fd0)
map --mem /drivers/p41032.ima.gz  (fd1)
map  --mem /ISO/winxpsp2.iso (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
root (0xff)
chainloader (0xff)/i386/setupldr.bin || chainloader (0xff)/I386/SETUPLDR.BIN || chainloader (0xff)
pause If you have an AHCI HDD you MUST press F6 when prompted, then hit S to select WinVBlock or FiraDisk (recommended) driver, then hit S again to select your AHCI driver (e.g. Atom Netbook=WinVBlock+ICH7R/DH, DQ67 series 6=FiraDisk+Desktop,Workstation,Server Express)
pause Now quickly hit [Enter] twice (and then F6 if you need to install an AHCI driver) ...

/boot/grub/windows/winxp2a.lst(內存較小時可用,U盤在安裝結束後纔可拔下)

map --mem /drivers/p41032.ima.gz (fd0)
map --mem /drivers/p41032.ima.gz  (fd1)
map /ISO/winxpsp2.iso (0xA0)
checkrange 0x80 read 0x8280 && map (hd0) (hd1)
checkrange 0x80 read 0x8280 && map (hd1) (hd0)
map --hook
map --rd-size=2048
map --mem (rd)+4 (0x55)
map --rehook
write (0x55) #!GRUB4DOS\x00v=1\x00XP.iso\x00\xA0\x00
rootnoverify (hd0,0)
chainloader (hd0)+1
pause Keep the USB drive connected until Setup completes!


注:

Windows Vista,Windows 7 安裝全版本可以通過刪除ISO下的 SOURCES\EI.CFG。

Windows 8 以上版本,需要修改ISO下 sources\ei.cfg。

零售版:
[EditionID]
[Channel]
_Default
[VL]
0

OEM版:
[EditionID]
[Channel]
OEM
[VL]
0

企業版
[EditionID]
[Channel]
Volume
[VL]
1


參考資料:http://www.rmprepusb.com/tutorials/install-xp-from-an-iso

          http://www.rmprepusb.com/tutorials/firawiniso

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章