荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: agileboy (快乐笛子), 信区: Microsoft
标  题: 三合一启动光盘制作
发信站: 荔园晨风BBS站 (Wed Feb 26 17:53:54 2003), 站内信件

有关说明:
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,
拷贝[urhttp://www.wwwfox.net/tool/bootcat.bin]bootcat.bin,diskemu.bin,
[urhttp://www.wwwfox.net/tool/wprosect.dat]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、拷贝cdrom_sp2.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\i386 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、据网友反映,本文制作的三合一光盘在某些主板上不能正常引导,如INTEL主板
。如果你已经按照本文方法,却未能成功引导,务必到其他机子上试一下,以免浪
费时间。
本文版权归DuYihua和无忧启动共同所有,如果在网络上转载,必须注明此文来自无
忧启动http://www.wwwfox.net)。

按照猫画虎作了一把,有一些问题原文没有说清楚,害的我苦苦挣扎,不过最终完
成了,下面是我的经验:

1. 所需软件
http://www.wwwfox.net/tool/bootcat.bin
http://www.wwwfox.net/tool/diskemu.bin
http://www.wwwfox.net/tool/wprosect.dat
http://www.wwwfox.net/tool/mkbootcd.exe
UltraEditor http://www.ultraedit.com/
XXcopy http://www.xxcopy.com/
CDImage http://www.tech-hints.com/prog/cdimage.zip
CDImage GUI http://www.tech-hints.com/prog/cdimagegui.zip

2. 如果你想把 sp2 放到盘中,切记在 update 以后再修改 setupldr.bin 和
txtsetup.sif, 因为 sp3 会更改这两个文件

3. 如果你用了 sp2, 切记把 cdromsp2.tst 拷贝到 cd 目录下, 原文写错了 -
cdrom_sp2.tst

4. 我还有一个问题,因为我做的是英文版本,不知为何,进入 win2000 安装文本
的第一个屏幕时,在 Windows 2000 Setup 下面有一些怪怪的字符,本来应该是
========的,那位大侠如果知道,望不啬告知。

哈,希望帮你节省一些时间。


--
               快 乐 笛 子      ^0^ 快乐笛子 ^0^
             就这样被你侮辱~~~
             就这样被你辱了再辱~~~

※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.48.27]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店