|
发表于 2007-3-5 22:35:57
|
显示全部楼层
来自: 中国江西南昌
回楼上:教程贴给你。7 K( V2 L7 ?6 L2 v! G- V
一、Windows 2000/XP多重启动光盘的启动原理
# w+ G; p8 l3 }5 F( \4 g1 E Windows 2000/XP各版本的原始安装光盘是单重启动,其引导文件中固化了光盘根目录下的i386目录(这一点给制作多重启动的 N 合 1 光盘带来了最大的障碍),该目录中不仅存放了Windows 2000/XP的系统文件,而且还存放了安装所需的安装文件和驱动程序。其引导过程如下:
, X, U& ^! j! O" J7 h6 Y! z先加载光盘引导文件(引导文件比如是 WIN2000.WBT),加载过程: WIN2000.WBT->setupldr.bin->ntdetect.com->再加载驱动程序->读txtsetup.sif->开始光盘安装% q$ a( D% n; B S
上述多个步骤中都涉及了光盘根目录下的i386目录,而我们将制作的 N 合 1 光盘是多重启动的,每个版本都包含一个i386子目录,它与单重启动光盘的目录结构不同(在光盘根目录与i386目录之间多了1层版本目录),因此不能简单地照搬单重启动的引导过程。所幸前辈高手们早就碰到了这个难题,而且也非常巧妙地解决了,那就是使用Windows 2000/XP的安装软盘组:用软盘启动计算机,依次加载所需驱动程序及必要的系统文件,从而避开安装时到光盘根目录下的i386目录加载安装文件和驱动程序,然后安装程序再从Windows 2000/XP安装光盘中安装复制其余的文件,继续安装。我们所要模拟的就是这一过程。改造后的 N 合 1 光盘引导过程如下:
3 G5 Y' n. O6 e7 A) o0 O( V光盘引导->选择版本模块->模拟软盘启动->setupldr.bin->ntdetect.com->再加载驱动程序->读txtsetup.sif->开始光盘安装。4 Z0 V7 v0 R3 h: R2 w$ i# |
并将上述多个步骤中都涉及到的光盘根目录下的 i386 目录,现在要把它放在双层目录下,光盘根目录中将存放安装软盘组。
) p$ ~5 b4 Z$ y2 y; ^二、Windows 2000 3 合 1 启动光盘的制作5 E$ H6 T$ l w2 w
⑴、所需工具
8 [' Y, H9 N+ Z; I* g- x①、 EasyBoot V3.2 光盘制作软件,下载地址:http://www.ultraiso.com/easyboot/cn/index.html
$ q( k+ Z- x4 ?& K' Z& b②、制作 Windows 2000 安装软盘组的img文件。可替换方法是制作4张安装软盘,然后将4张软盘上的全部文件复制到硬盘相应目录下。
/ v" n7 P* |* n 制作软盘组软件,下载地址:http://www.winimage.com/winimage/winima60.zip% d* C. O5 v- ? s. X, R
③、能打开二进制的软件 Microsoft Visual C++,精简版,下载地址:http://www.yy-china.net/htm/hhgj.htm( A |6 x/ k1 ~: {' k9 Y, ~! B
④、Windows 2000 安装软盘组4 u- `' J# `! N. I2 S: H! Y" B
必须用软盘引导机器,加载必要的系统文件及基本驱动程序,然后从光盘继续安装。
; i+ \% {1 C. E. ZWindows 2000 安装软盘组在正版光盘的 bootdisk 目录下,三个版本的安装软盘是不同的,不能混用。
2 P- V1 t5 E8 R6 c, v$ F. E8 S⑤、虚拟电脑软件 VMware(或Virtual PC)和刻录软件 Nero. e( x! C9 w. e5 h0 Y
可选,用来测试制作完成的3合1镜像文件并烧录光盘。
* y+ _) p7 V; `) N⑥、WinISO 这个软件用来编辑镜像和取出启动文件(XXX.WBT)
* G# V. C& B! T1 u; N3 T& @2 h⑵、 目录及文件结构
( P$ H! V: V6 V 保证硬盘上有足够的空间(假设将文件存放在默认的 EasyBoot 文件夹下 D:\EasyBoot\WIN2K,全部三个版本的原始文件约占用空间为1.24 GB,生成的镜像文件约为520 MB 左右),建立的目录结构如下:- B7 A+ Q: k) C0 \& J) k
①、建立目录结构及文件位置
" f) h0 ~' _: g4 Z2 X" I: G D:\EasyBoot\WIN2K
1 y% r: M( |3 g( }$ o" O! C D:\EasyBoot\WIN2K\IMG
" {+ }; C4 S7 ?0 F# ]* ] D:\EasyBoot\WIN2K\IMG\W2KWPRO.WBT# O7 m4 V" @$ M k
D:\EasyBoot\WIN2K\IMG\W2KWSRV.WBT
9 d3 m& I6 l: f+ P D:\EasyBoot\WIN2K\IMG\W2DASRV.WBT
4 M& v, I1 Y1 S+ T, b9 o D:\EasyBoot\WIN2K\WPRO" l2 R; z4 L2 z/ C5 M4 e
D:\EasyBoot\WIN2K\WSRV' a- X, `" k% k& z# C) S
D:\EasyBoot\WIN2K\ASRV
% v* q8 E5 B0 ^9 W" d8 S D:\EasyBoot\WIN2K\CDROM_IA.5
( ]9 A' f. |+ i1 l' ^ D:\EasyBoot\WIN2K\CDROM_ID.5
! }8 i! ?7 B: ~: C- t7 ^8 g D:\EasyBoot\WIN2K\CDROM_IP.5
7 l. b! x" A& E" P D:\EasyBoot\WIN2K\CDROM_IS.54 o3 u; @! Y0 C' f4 S8 y9 ]7 X& ^. D
D:\EasyBoot\WIN2K\CDROM_NT.5
" A" G0 B" Q: F# k" { D:\EasyBoot\WIN2K\CDROMSP3.TST
6 I' s4 N% u4 C5 F P D:\EasyBoot\WIN2K\BOOTFONT.BIN5 E$ M' a* V$ i5 `" M
D:\EasyBoot\WIN2K\SYSTEM\WIN2KWPRO
8 @& T* b! u3 l. J# D) r D:\EasyBoot\WIN2K\SYSTEM\WIN2KWSRV
# N4 _* m2 P$ P+ i2 i8 ]0 m6 L3 G7 \ D:\EasyBoot\WIN2K\SYSTEM\WIN2KASRV$ Q7 A. |$ O. _& [' r
D:\EasyBoot\WIN2K\WIN2000.BIN -> (我取名为 WIN2000.BIN,这个文件名任意取) F6 H2 M* i2 F3 ~/ [& g( f9 ]
D:\EasyBoot\WIN2K\LOADER.BIN3 D8 u+ i* C! _2 J
建好以上目录和文件放好后/ c. s+ x( b3 O- d
②、复制文件+ g W* Z5 ` B* `
接着开始按放三个版的文件,其中,D:\EasyBoot\WIN2K\ 是Windows 2000 3合1光盘的根目录,
. q- j) X8 X: p" R5 e1 hD:\EasyBoot\WIN2K\SYSTEM\WIN2KWPRO 用于存放Windows 2000专业版文件。(光盘根目录下的全部文件)
) V0 ]. X% a b: V* U0 ND:\EasyBoot\WIN2K\SYSTEM\WIN2KWSRV 用于存放Windows 2000服务器版文件,(光盘根目录下的全部文件)
3 p) b6 [5 \. M" P* XD:\EasyBoot\WIN2K\SYSTEM\WIN2KASRV 用于存放Windows 2000高级服务器版文件,(光盘根目录下的全部文件)
0 q+ |0 f, _0 m3 s& u/ K将 Windows 2000 专业版光盘上的文件全部复制到 D:\EasyBoot\WIN2K\SYSTEM\WIN2KWPRO 目录。$ S, Z r9 }! B. j
将 Windows 2000 服务器版光盘上的文件全部复制到 D:\EasyBoot\WIN2K\SYSTEM\WIN2KWSRV 目录。
( i0 [ M1 Y* z5 g, O' D8 J6 N4 |将 Windows 2000 高级服务器版光盘上的文件全部复制到 D:\EasyBoot\WIN2K\SYSTEM\WIN2KASRV 目录。) v9 t# q/ [; L
必须确保复制了全部文件和子目录,包括具有系统和隐藏属性的。- i- ]2 t* T9 O, \) c
复制完毕后,清除 D:\EasyBoot\WIN2K\SYSTEM\下全部文件和子目录的系统、隐藏和只读属性。
, H7 W* W' K: B Q将 D:\EasyBoot\WIN2K\SYSTEM\WIN2KWPRO 目录下的 cdrom_ia.5 复制到 D:\EasyBoot\WIN2K\目录下,6 ?' d$ |& m& i4 a4 ]
将 D:\EasyBoot\WIN2K\SYSTEM\WIN2KWSRV 目录下的 cdrom_is.5 复制到 D:\EasyBoot\WIN2K\目录下,
7 X4 G$ ?) a& n$ S# ?7 Y1 t/ c将 D:\EasyBoot\WIN2K\SYSTEM\WIN2KASRV 目录下的 cdrom_ip.5 和 cdrom_nt.5 复制到 D:\EasyBoot\WIN2K\目录下,
+ B3 H5 O7 g o3 \2 e1 V3 b③、集成 WINDOWS 2000 SP32 R+ g8 W( ^* Z& b
这一步是把刚复制好的 WINDOWS 2000 三个版本进行集成为 WINDOWS 2000 SP3 ,首先到网上下载 WINSP3.EXE 升级文件,下载好后,用 WINRAR 解压到 D 盘下,然后打开 DOS 命令符,输入以下字符串:
5 D( j7 o: j2 {; ^. G3 i) ~' vD:\W2Ksp3\i386\update\update /s:\EASYBOOT\WIN2K\SYSTEM\WIN2KWPRO (这个集成专业版)7 I# i2 Q9 v3 G- p9 ^6 y8 F5 S
D:\W2Ksp3\i386\update\update /s:\EASYBOOT\WIN2K\SYSTEM\WIN2KWSRV (这个集成服务器版)# j! p8 o8 E4 r" m* m! n
D:\W2Ksp3\i386\update\update /s:\EASYBOOT\WIN2K\SYSTEM\WIN2KASRV (这个集成高级服务器版)9 S9 t/ D- {( d/ i& e6 }" M
要点:D:\EasyBoot\WIN2K\目录下面必须有cdrom_ia.5、cdrom_is.5、cdrom_ip.5和cdrom_nt.5文件,这是我们欺骗安装程序的标志,这张光盘是Windows 2000 的原始安装盘。还有 D:\EasyBoot\WIN2K\目录下面必须有cdromsp3.tst 文件,否则安装程序会要求我们插入 Service Pack 3 光盘,; `, U& Z5 A- K
⑶、配置软盘组安装程序文件7 n `1 U5 ]7 b. X9 _/ }+ B
D:\EasyBoot\WIN2K\WPRO
& o- s* P" H) JD:\EasyBoot\WIN2K\WSRV/ O8 Y1 Y% ^2 [) D1 \" u% Q
D:\EasyBoot\WIN2K\ASRV
/ s: @6 P: o9 @+ W& @! J以上这三个目录是三个版本的软盘组目录:: }* v) I4 l0 y. v
注意要点:我把这三个版本取名为大家通用的“WPRO”、“WSRV”、“WPRO”的软盘组,而软盘组目录名称是固定在这三个版本的启动文件里(比如我取名为 W2KWPRO.WBT、W2KWSRV.WBT、 W2KASRV.WBT 这三个文件,而这三个文件里面只能改动的字符长度是4个字符长度。
& j0 E9 e# G% D2 Z& P0 N4 N Windows 2000正版光盘上有个bootdisk子目录,里面包含4张Windows 2000安装软盘镜像的img文件。用WinImg将各个版本bootdisk目录下的4个img文件分别释放到各自的系统文件目录下:
- k0 B+ \2 j$ S7 o$ ^' C1 ]! [将原版光盘根目录下的\bootdisk目录里的img文件全部释放到 D:\EasyBoot\WIN2K\WPRO\下。
" c8 S4 t9 z* B( ^将原版光盘根目录下的\bootdisk目录里的img文件全部释放到 D:\EasyBoot\WIN2K\WSRV\下。! l* w l+ U! I9 Z3 \( j- M& R
将原版光盘根目录下的\bootdisk目录里的img文件全部释放到 D:\EasyBoot\WIN2K\ASRV\下。 ?2 ]! k7 N, r2 ?) i; C5 k8 R5 v
要点:这是我们模拟软盘安装的关键,一定要连带system32目录(里面有两个文件)一起释放。还有把三个版本里面都有一个 I386 目录,在 I386 里面都有一个文件你必须把它复制到相应的软盘组里面去(文件名是 TXTSETUP.SIF) ,把原来的覆盖。8 C3 N8 w2 \, ]# s
⑷、取启动文件
' k6 J) y1 L) D8 h. G( ~/ \ 用 WinISO 制作 WIN2000 镜像文件 ISO ,然后打开刚做好的镜像文件,取出启动文件,保存为 XXX.WBT(那一个版本都行)。- z p0 X! N; y; i
⑸、修改文件
9 [ F( F( t' ?& o4 [ 用 VC++(或其它软件)打开刚保存的 XXX.WBT 文件,找到这个字符串 SETUPLDR.BINBOOTFIX.BINI386 将其后面的 4 个字符(I386)修改为相应的 “WPRO”、“WSRV”、“ASRV”字符,分别把它保存为这三个启动文件 W2KWPRO.WBT、W2KWSRV.WBT、 W2KASRV.WBT ,这三个文件取名可以任意取。要存放在其他目录下,并相应修改目录结构。此外,还必须在后面的配置中进行相应修改。这三个文件修改好后,再找出软盘组里面的二个文件分别是setupldr.bin 和 txtsetup.sif,这二个文件修改如下:0 Z0 Y% c4 z7 o0 X. W
用 VC++(或其它软件)二进制打开 D:\EasyBoot\WIN2K\WPRO\setupldr.bin,找到“I386”,把“i386”替换为“WPRO”,共3处;5 |8 Q* U0 b! i' g' O6 g
用 VC++(或其它软件)二进制打开 D:\EasyBoot\WIN2K\WSRV\setupldr.bin,找到“I386”,把“i386”替换为“WSRV”,共3处;
$ e% q5 t9 X w; _9 P/ n3 h# _用 VC++(或其它软件)二进制打开 D:\EasyBoot\WIN2K\ASRV\setupldr.bin,找到“I386”,把“i386”替换为“ASRV”,共3处。& r8 E* a3 [+ l7 P
存盘退出。
f; k5 r2 e$ Z用 VC++(或其它软件)打开 D:\EasyBoot\WIN2K\WPRO\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\SYSTEM\WIN2KWPRO\"”;' r+ R- c/ o3 ]6 ^2 c' [
用 VC++(或其它软件)打开 D:\EasyBoot\WIN2K\WSRV\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\SYSTEM\WIN2KWSRV\"”;' K' A7 w i; B
用 VC++(或其它软件)打开 D:\EasyBoot\WIN2K\ASRV\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\SYSTEM\WIN2KASRV\"”。
4 E x/ b0 B$ }( ?存盘退出。2 f+ A K1 r+ X" B+ A
要点:这两个文件中的路径告诉安装程序从何处复制文件,必须与目录结构相匹配。
( E& N6 j* i9 K, C: y& F4 n1 O⑹、跳过输入产品序列号
$ ]2 W* H! b9 j 查找各个版本i386目录,找到文件setupp.ini,用记事本打开,将其中的“Pid=xxxxx000”修改为为“Pid=xxxxx270”,存盘退出。这一步不是必须的,只是图个方便。
5 R8 Z$ c# l) [⑺、 制作ISO文件
) ` _1 p# Z, i" Z# r: A1 u7 G 配好和修改好以上文件与目录结构,就可以制作 ISO 镜像了,用 EasyBoot 制作是非常简单,只要点击“制作ISO”按扭,弹出一个对话框,在对话框里点优化光盘文件和其它设置,(优化光盘设置是必须点上的)然后点击“制作”,制作就开始了。! q2 e7 [& z0 y2 `; E1 Y& Q
⑻、测试ISO文件/ O# b/ {% H# ~+ J' @3 x' q
用 VMware 加载 WIN2000.ISO 文件,设置第1启动设备为光驱。从光盘启动后,系统首先显示信息用 EasyBoot 制作好的菜单,按相应的键后,就可启动相应安装版本。此后的安装与原版光盘的安装一致。需要逐个安装,以测试各个版本的完整性。. d1 t2 g8 E/ e) q
⑼、烧录光盘% y5 v1 Y+ u% m# Z
ISO镜像文件测试无误后,即可用自己熟悉的烧录软件软件(例如Nero)将其烧录到光盘。 这样,一张可启动的Windows 2000 3合1光盘就制作完成了。
+ h/ I- O+ G% T) z2 Z! i⑽、特色
7 f, t$ N5 b3 ~; I A9 K O5 K优点:用 EasyBoot 制作出来的与流行的 Windows 2000/XP N 合 1 光盘相比,上述方法制作的光盘目录结构更简洁,没有一个多余的文件,用 EasyBoot 制作出漂亮的彩色菜单(当然diskem1x也不能,但 EasyBoot 制作能)。
( k0 ]- U3 E* U7 c# K: {& @. _9 z% \5 C2 v: ?: d. \' i8 _& Y) @
[ 本帖最后由 zxq111 于 2007-3-5 22:37 编辑 ] |
|