Windows 2000 三合一光碟製作

 

注意:本文介紹的不是windows 2000 3in1 的最新做法
有關說明:
1、Windows 2000 三合一光碟是指將WIN2000的PRO、SERVER和ADVSERVER三個版本做成一張光碟。
由於這三個版本的很多文件是相同的,利用微軟內部使用的工具cdimage,可以共用這些相同文件,而不必重復地放在一張光碟上,
這樣,三個完整版本(1.2G)可以放在一張光碟上(500多M).
欲瞭解詳細情況,請看cdimage中帶有的幫助文件。
2、本文介紹如何使用這三合一光碟成??動光碟,而且是功能表方式選擇三個OS來安裝。
本引導光碟的開機畫面如下:
  MultiBoot Setup Title
 
A.Setup Win2000 Professional
B.Setup Win2000 Server
C.Setup Win2000 Adv Server
 
 
 
Select item to boot...

選A、B、C進入各自的引導,其引導是windows 2000/NT特有的引導方式安裝,不是簡單地通過運行winnt.exe來安裝。
3、本文系 DuYihua 發給我,非常感謝!DuYihua 的原文寫得非常詳細。

本站長手頭有一張正版的三合一光碟的複製盤,是去年一位網友用NERO幫我複製的,原版盤是能三引導,而這張複製盤不能引導。
由於正版三合一光碟的目錄結構和 DuYihua 所說的有一點出入,

如正版光碟上的Windows 2000 Advance Server目錄是:\simpchin\win2000\adv_srv
而DuYihua寫的Windows 2000 Advance Server目錄是:\simpchin\win2000\adv_svr

?了和正版保持一致,所以做了一些修改。
附:DuYihua的原文

正文部分:
經過我 (DuYihua)的多次跟蹤,發現其實Win2000的?動關鍵就在於其引導文件固化了i386目錄,只要修改其引導文件就可以從不同

的地方來引導不同的Win2000安裝。
Win2000?動過程:

Boot->setupldr->ntdetect->引導驅動程式->讀txtsetup.sif->開始安裝
運行環境:要求在windows 2000 下,因?製作工具CDImage只能在Win2000下運行。

以下?製作過程:
1. 首先你應該擁有前面提到的工具。

還有十六進位編輯工具,如:Ultraedit,解img文件工具,如:winimage
2. 你應該擁有Win2000的三個版本文件,最好每個版本都有bootdisk目錄(?動軟碟)。

3. 你應該有Win2000的?動文件
這堸眾]?w2ksect.dat。將它一拷?三,這堸眾]? wprosect.dat,wsrvsect.dat,asrvsect.dat

4. 製作CD目錄
在你的硬碟上建一個目錄example,在下面建子目錄CD,

拷貝cdimage, mkbootcd.exe到example目錄下,在example目錄下建立一文件mkbootcd.txt,
拷貝bootcat.bin,diskemu.bin,wprosect.dat,wsrvsect.dat,asrvsect.dat到CD目錄下,

在CD目錄下建立引導目錄WPRO,WSRV,ASRV,SIMPCHIN,
在SIMPCHIN目錄下建立目錄 WIN2000,在WIN2000下建立目錄PRO,SERVER,ADV_SRV,

拷貝bootfont.bin,cdrom_ip.5,cdrom_is.5, cdrom_ia.5,cdrom_nt.5到CD目錄下,
拷貝各個版本的i386目錄到各自目錄下,

現在你的目錄結構應該如下:
example
example\cdimage.exe
example\mkbootcd.exe
example\mkbootcd.txt
example\cd
example\cd\bootcat.bin
example\cd\diskemu.bin
example\cd\wprosect.dat
example\cd\wsrvsect.dat
example\cd\asrvsect.dat
example\cd\bootfont.bin
example\cd\cdrom_ip.5
example\cd\cdrom_is.5
example\cd\cdrom_ia.5
example\cd\cdrom_nt.5
example\cd\wpro
example\cd\wsrv
example\cd\asrv
example\cd\simpchin
example\cd\simpchin\win2000
example\cd\simpchin\win2000\pro
example\cd\simpchin\win2000\pro\i386
example\cd\simpchin\win2000\server
example\cd\simpchin\win2000\server\i386
example\cd\simpchin\win2000\adv_srv
example\cd\simpchin\win2000\adv_srv\i386


5. 修改?動文件
用Ultraedit打開wprosect.dat,修改I386?WPRO,

打開wsrvsect.dat,修改I386?WSRV,
打開asrvsect.dat,修改I386?ASRV。

6. 製作引導驅動
如果你們的光碟上已經有BOOTDISK的目錄,那?只要將BOOTDISK目錄下的四個img文件(?動盤)解到各自的引導目錄下,

如:PRO版本的四個img文件就解到wpro目錄下,SERVER版本的四個img文件解到wsrv目錄下,Adv版本的四個img文件解到asrv目錄下。
如果你沒有?動盤img文件,那就從各自的i386目錄下拷貝,

如wpro目錄下的文件列表如下(內有一個目錄system32):

2001-02-23 13:58 <DIR> .
2001-02-23 13:58 <DIR> ..
2000-01-10 12:00 21,840 1394BUS.SY_
2000-01-10 12:00 13,657 ABP480N5.SY_
2000-01-10 12:00 84,185 ACPI.SY_
2000-01-10 12:00 6,541 ACPIEC.SY_
2000-01-10 12:00 34,361 ADPU160M.SY_
2000-01-10 12:00 7,846 AHA154X.SY_
2000-01-10 12:00 41,772 AIC116X.SY_
2000-01-10 12:00 33,686 AIC78U2.SY_
2000-01-10 12:00 30,488 AIC78XX.SY_
2000-01-10 12:00 7,163 AMSINT.SY_
2000-01-10 12:00 15,222 ASC.SY_
2000-01-10 12:00 13,195 ASC3350P.SY_
2000-01-10 12:00 8,738 ASC3550.SY_
2000-01-10 12:00 44,382 ATAPI.SY_
2000-01-10 12:00 20,951 BIOSINFO.INF
2000-01-10 12:00 64,584 BOOTFONT.BIN
2000-01-10 12:00 6,152 BOOTVID.DL_
2000-01-10 12:00 14,885 BUSLOGIC.SY_
2000-01-10 12:00 3,907 CD20XRNT.SY_
2000-01-10 12:00 32,879 CDFS.SY_
2000-01-10 12:00 15,402 CDROM.SY_
2000-01-10 12:00 7,669 CLASS2.SY_
2000-01-10 12:00 19,363 CLASSPNP.SY_
2000-01-10 12:00 6,903 CPQARRAY.SY_
2000-01-10 12:00 7,687 CPQARRY2.SY_
2000-01-10 12:00 29,155 CPQFCALM.SY_
2000-01-10 12:00 23,039 CPQFWS2E.SY_
2000-01-10 12:00 90,722 C_936.NL_
2000-01-10 12:00 8,079 DAC960NT.SY_
2000-01-10 12:00 15,529 DISK.SY_
2000-01-10 12:00 3 DISK101
2000-01-10 12:00 3 DISK102
2000-01-10 12:00 3 DISK103
2000-01-10 12:00 3 DISK104
2000-01-10 12:00 116,391 DMBOOT.SY_
2000-01-10 12:00 62,287 DMIO.SY_
2000-01-10 12:00 3,301 DMLOAD.SY_
2000-01-10 12:00 75,806 FASTFAT.SY_
2000-01-10 12:00 6,187 FD16_700.SY_
2000-01-10 12:00 14,952 FDC.SY_
2000-01-10 12:00 12,505 FIREPORT.SY_
2000-01-10 12:00 25,827 FLASHPNT.SY_
2000-01-10 12:00 10,977 FLPYDISK.SY_
2000-01-10 12:00 54,977 FTDISK.SY_
2000-01-10 12:00 49,668 HAL.DL_
2000-01-10 12:00 39,499 HALAACPI.DL_
2000-01-10 12:00 33,948 HALACPI.DL_
2000-01-10 12:00 45,370 HALAPIC.DL_
2000-01-10 12:00 14,539 HIDCLASS.SY_
2000-01-10 12:00 11,941 HIDPARSE.SY_
2000-01-10 12:00 6,023 HIDUSB.SY_
2000-01-10 12:00 22,649 I8042PRT.SY_
2000-01-10 12:00 8,604 INI910U.SY_
2000-01-10 12:00 2,359 INTELIDE.SY_
2000-01-10 12:00 8,153 IPSRAIDN.SY_
2000-01-10 12:00 25,787 ISAPNP.SY_
2000-01-10 12:00 12,435 KBDCLASS.SY_
2000-01-10 12:00 7,503 KBDHID.SY_
2000-01-10 12:00 6,416 KBDUS.DLL
2000-01-10 12:00 14,534 LBRTFDC.SY_
2000-01-10 12:00 17,845 LP6NDS35.SY_
2000-01-10 12:00 847 L_INTL.NL_
2000-01-10 12:00 14,677 MOUNTMGR.SY_
2000-01-10 12:00 5,393 MRAID35X.SY_
2000-01-10 12:00 6,164 NCRC710.SY_
2000-01-10 12:00 34,468 NTDETECT.COM
2000-01-10 12:00 267,127 NTFS.SY_
2000-01-10 12:00 719,041 NTKRNLMP.EX_
2000-01-10 12:00 21,105 OHCI1394.SY_
2000-01-10 12:00 15,044 OPENHCI.SY_
2000-01-10 12:00 6,032 PARTMGR.SY_
2000-01-10 12:00 33,276 PCI.SY_
2000-01-10 12:00 1,505 PCIIDE.SY_
2000-01-10 12:00 12,266 PCIIDEX.SY_
2000-01-10 12:00 51,335 PCMCIA.SY_
2000-01-10 12:00 22,839 QL1080.SY_
2000-01-10 12:00 19,030 QL10WNT.SY_
2000-01-10 12:00 22,967 QL1240.SY_
2000-01-10 12:00 33,267 QL2100.SY_
2000-01-10 12:00 19,031 SBP2PORT.SY_
2000-01-10 12:00 40,581 SCSIPORT.SY_
2000-01-10 12:00 7,652 SERENUM.SY_
2000-01-10 12:00 29,589 SERIAL.SY_
2000-01-10 12:00 152,766 SETUPDD.SY_
2001-02-23 10:56 229,776 SETUPLDR.BIN
2000-01-10 12:00 69,632 SETUPREG.HIV
2000-01-10 12:00 5,964 SFLOPPY.SY_
2000-01-10 12:00 11,072 SPARROW.SY_
2000-01-10 12:00 187,024 SPCMDCON.SYS
2000-01-10 12:00 8,929 SPDDLANG.SY_
2000-01-10 12:00 8,366 SYMC810.SY_
2000-01-10 12:00 13,194 SYMC8XX.SY_
2000-01-10 12:00 12,017 SYM_HI.SY_
2001-02-23 10:30 <DIR> SYSTEM32
2000-01-10 12:00 33,455 TFFSPORT.SY_
2000-02-01 02:45 363,365 TXTSETUP.SIF
2000-01-10 12:00 19,273 UHCD.SY_
2000-01-10 12:00 14,120 ULTRA66.SY_
2000-01-10 12:00 11,893 USBD.SY_
2000-01-10 12:00 22,049 USBHUB.SY_
2000-01-10 12:00 11,268 USBSTOR.SY_
2000-01-10 12:00 7,042 VGA.SY_
2000-01-10 12:00 2,437 VGAOEM.FO_
2000-01-10 12:00 27,261 VIDEOPRT.SY_
2000-01-10 12:00 2,423 WMILIB.SY_
104 個文件 4,037,039 位元組


WPRO\SYSTEM32 的目錄
2001-02-23 10:30 <DIR> .
2001-02-23 10:30 <DIR> ..
2000-01-10 12:00 481,040 NTDLL.DLL
2000-01-10 12:00 152,336 SMSS.EXE
2 個文件 633,376 位元組


7. 修改setupldr.bin和txtsetup.sif
進入各自的引導目錄wpro,wsrv,asrv,

用Ultraedit打開setupldr.bin,修改i386?各自的目錄WPRO,WSRV,ASRV,
用Ultraedit打開txtsetup.sif,找到SetupSourcePath = "\"(引號內有可能不同),修改?各自的安裝目錄,

例如:
SetupSourcePath = "\SIMPCHIN\WIN2000\PRO\"

SetupSourcePath = "\SIMPCHIN\WIN2000\SERVER\"
SetupSourcePath = "\SIMPCHIN\WIN2000\ADV_SRV\"

8、在wpro、wsrv、asrv目錄中各加入一個bootfix.bin,

可以增加"按任意鍵從CD-ROM引導;不按任何鍵,5秒後從硬碟引導"的功能。
9. 製作ISO文件

在Win2000的DOS下,進入example目錄,輸入以下命令:
cdimage -lW2KBOOT -h -n -o cd bootcd.iso

這時會在example目錄下?生文件bootcd.iso
10. 編寫mkbootcd.txt

打開mkbootcd.txt,輸入如下文本:

;
; MKBOOTCD command file created by Gary Tong
; for DiskEmu.bin v0.8 Beta
;
; Center the MultiBoot Menu Title in a 24-character range
; / \
-S MultiBoot Menu Title
bootcat.bin
;
;--- Boot entries ---
; Default boot image entry
; Boot Media Type = No Emulation
-T0
; Sector Count in 512-byte sectors
-C8
; Recommended DiskEmu.bin Load Segment is between 4000 and 9000
-L5000
diskemu.bin
; Continue with remaining boot image entries
; Only each Section's first bootable image will appear in DiskEmu.bin's Menu
; 80x86 Platform ID w/high bit set to avoid PC BIOS multiboot menu
-P80
; Use Default Load Segment (07C0)
-L0
; Up to nine boot images may be listed here
; Left justify the Menu text for each entry in a 28-character range
; / \
-t0
-c4
-SSetup Win2000 Professional
wprosect.dat
-SSetup Win2000 Server
wsrvsect.dat
-SSetup Win2000 Adv Server
asrvsect.dat
; etc...


11.製作?動CD
在Win2000的DOS下,進入example目錄,輸入以下命令:

mkbootcd bootcd.iso - < mkbootcd.txt


注意:一定要在Win2000的DOS下執行上述命令,因?這時可以看到你的文件引導有沒有被加入到引導區中,並且有沒有出錯情況。
11.用easycd將bootcd.iso刻錄到CD上,然後...

(站長注:或用nero burning rom刻錄bootcd.iso,我都是用NERO來刻三合一?動盤)
補充說明:

1、如何讓2000安裝程式跳過輸入?品序列號
打開i386目錄下setupp.ini,編輯

Pid=xxxxx000?
Pid=xxxxx270

2、如何製作Win2000+SP2 的多重?動
一、升級windows 2000 各版本升級到 sp2

1、在拷貝完i386目錄後,運行W2KSP2.exe /x將SP2解開.,
2、在w2ksp2同級目錄中做一個批文件,內容如下:

w2ksp2\update\update.exe -s:x:\example\cd\simpchin\win2000\pro
w2ksp2\update\update.exe -s:x:\example\cd\simpchin\win2000\server

w2ksp2\update\update.exe -s:x:\example\cd\simpchin\win2000\adv_srv
3、執行上述批文件,自動完成windows 2000 各版本升級到 sp2

4、拷貝cdromsp2.tst到cd目錄下。
二、把wpro,wsvr,asvr(引導目錄)下的文件更新掉:

1、下載文件 xxcopy.exe (注:在無憂?動各版的引導文件中都有該文件),拷入example中。
2、在example目錄中做一個批文件,內容如下:

xxcopy.exe cd\simpchin\win2000\pro\i386 cd\wpro /U /E /YY
xxcopy.exe cd\simpchin\win2000\server\i386 cd\wsrv /U /E /YY

xxcopy.exe cd\simpchin\win2000\adv_srv\386 cd\asrv /U /E /YY
3、執行一次上述命令,將自動完成替換過程。

3、Windows 2000三合一?動還可以加入無憂?動022版,方法如下:
在上文的CD目錄中,加入無憂?動配套文件BOOT和UCDOS這兩個目錄及022.IMG,並且修改mkbootcd.txt.

修改後的mkbootcd.txt.
;
; MKBOOTCD command file created by Gary Tong
; for DiskEmu.bin v0.8 Beta
;
; Center the MultiBoot Menu Title in a 24-character range
; V V
-S MultiBoot Menu Title
bootcat.bin
;
;--- Boot entries ---
; Default boot image entry
; Boot Media Type = No Emulation
-T0
; Sector Count in 512-byte sectors
-C8
; Recommended DiskEmu.bin Load Segment is between 4000 and 9000
-L5000
diskemu.bin
; Continue with remaining boot image entries
; Only each Section's first bootable image will appear in DiskEmu.bin's Menu
; 80x86 Platform ID w/high bit set to avoid PC BIOS multiboot menu
-P80
; Sector Count in 512-byte sectors
-C1
; Use Default Load Segment (07C0)
-L0
; Boot Media Type:
; -T0 = No Emulation
; -T1 = 1.2 MB Floppy
; -T2 = 1.44 MB Floppy
; -T3 = 2.88 MB Floppy
-T2
; Up to nine boot images may be listed here
; Left justify the Menu text for each entry in a 28-character range
; V V
-SStart Bootcd 022
022.img
; etc...
-T0
-C4
-SSetup Win2000 Professional
wprosect.dat
-SSetup Win2000 Server
wsrvsect.dat
-SSetup Win2000 Adv Server
asrvsect.dat
; etc...

在Windows 2000 的DOS下,執行mkbootcd.exe bootcd.iso - < mkbootcd.txt,檢查螢幕上有無出現類似下面的提示:


4、可以用同樣的方法加入NT 4.0 的兩個版本,成?5in1版本。?動文件用NT引導使用的三張?動軟碟文件,並用SP6中的
Atapi.sys替換引導目錄和I386目錄下的同名文件,即可支援大硬碟。

5、可以用本站的隱藏目錄的方法,隱藏與?動有關的文件,且不影響?動功能。這些文件在正版三合一?動光碟是找不到的。
如隱藏WPRO、WSRV、ASRV、BOOT、UCDOS目錄及所有的*.dat、DISKEMU.BIN、BOOTCAT.BIN,這樣更象正版盤。

注意:
1、不要去隱藏BOOTFONT.BIN,不然在剛開始安裝顯示中文會出現亂碼。

2、不要去隱藏SIMPCHIN目錄和*.5這幾個文件,否則可能會出問題,我沒有試過,如你有興趣,可以去試一下。
6、據網友反映,本文製作的三合一光碟在某些主板上不能正常引導,如果你已經按照本文方法,卻未能成功引導,務必到其他

機子上試一下,以免浪費時間。