|
发表于 2007-3-5 22:35:57
|
显示全部楼层
来自: 中国江西南昌
回楼上:教程贴给你。 Z: D& m& e( O- i8 n8 B. A
一、Windows 2000/XP多重启动光盘的启动原理* l8 q" R" \+ O4 o" t# M h
Windows 2000/XP各版本的原始安装光盘是单重启动,其引导文件中固化了光盘根目录下的i386目录(这一点给制作多重启动的 N 合 1 光盘带来了最大的障碍),该目录中不仅存放了Windows 2000/XP的系统文件,而且还存放了安装所需的安装文件和驱动程序。其引导过程如下:9 [5 o. ?- W6 a& o
先加载光盘引导文件(引导文件比如是 WIN2000.WBT),加载过程: WIN2000.WBT->setupldr.bin->ntdetect.com->再加载驱动程序->读txtsetup.sif->开始光盘安装; p" {7 _2 i( {6 B4 d- u
上述多个步骤中都涉及了光盘根目录下的i386目录,而我们将制作的 N 合 1 光盘是多重启动的,每个版本都包含一个i386子目录,它与单重启动光盘的目录结构不同(在光盘根目录与i386目录之间多了1层版本目录),因此不能简单地照搬单重启动的引导过程。所幸前辈高手们早就碰到了这个难题,而且也非常巧妙地解决了,那就是使用Windows 2000/XP的安装软盘组:用软盘启动计算机,依次加载所需驱动程序及必要的系统文件,从而避开安装时到光盘根目录下的i386目录加载安装文件和驱动程序,然后安装程序再从Windows 2000/XP安装光盘中安装复制其余的文件,继续安装。我们所要模拟的就是这一过程。改造后的 N 合 1 光盘引导过程如下:: H0 Z, H$ |$ L- H# E2 S
光盘引导->选择版本模块->模拟软盘启动->setupldr.bin->ntdetect.com->再加载驱动程序->读txtsetup.sif->开始光盘安装。) E0 ~( c% q% x1 C) g. L
并将上述多个步骤中都涉及到的光盘根目录下的 i386 目录,现在要把它放在双层目录下,光盘根目录中将存放安装软盘组。
/ H2 p1 @1 o4 O二、Windows 2000 3 合 1 启动光盘的制作
( B T3 I% D- W- Y; U2 q% D8 Z⑴、所需工具
, K& B( d7 Z. W+ z, E+ e/ {①、 EasyBoot V3.2 光盘制作软件,下载地址:http://www.ultraiso.com/easyboot/cn/index.html
; A: w" \5 b) S" [/ g②、制作 Windows 2000 安装软盘组的img文件。可替换方法是制作4张安装软盘,然后将4张软盘上的全部文件复制到硬盘相应目录下。, P1 g3 ^, o: Q8 R; {
制作软盘组软件,下载地址:http://www.winimage.com/winimage/winima60.zip/ M6 ?) p1 N" e# I
③、能打开二进制的软件 Microsoft Visual C++,精简版,下载地址:http://www.yy-china.net/htm/hhgj.htm
5 F* X) c/ d$ R( j W7 o) [6 j④、Windows 2000 安装软盘组7 I1 {$ V1 t/ u- F; R+ _
必须用软盘引导机器,加载必要的系统文件及基本驱动程序,然后从光盘继续安装。5 B1 L1 P1 F+ Q0 k9 i# o7 w
Windows 2000 安装软盘组在正版光盘的 bootdisk 目录下,三个版本的安装软盘是不同的,不能混用。; A: d4 {9 o& M F
⑤、虚拟电脑软件 VMware(或Virtual PC)和刻录软件 Nero
, G7 M8 V5 y* B* b! B$ N4 ^2 [ 可选,用来测试制作完成的3合1镜像文件并烧录光盘。
& N3 ~: y# m b A⑥、WinISO 这个软件用来编辑镜像和取出启动文件(XXX.WBT)
/ j/ J0 a* ^7 s' w⑵、 目录及文件结构" Z6 H; F; ?, J2 W, v3 j
保证硬盘上有足够的空间(假设将文件存放在默认的 EasyBoot 文件夹下 D:\EasyBoot\WIN2K,全部三个版本的原始文件约占用空间为1.24 GB,生成的镜像文件约为520 MB 左右),建立的目录结构如下:
7 d& B& f/ U* d8 c$ `$ P+ I①、建立目录结构及文件位置1 t9 Q$ _0 F# H. a0 r7 K
D:\EasyBoot\WIN2K
! @% c& y+ [$ s! X6 |+ W8 U7 ~ D:\EasyBoot\WIN2K\IMG# s9 y; x& o/ q6 R
D:\EasyBoot\WIN2K\IMG\W2KWPRO.WBT
7 l% j9 a8 ]$ x, N; ]; Y) } D:\EasyBoot\WIN2K\IMG\W2KWSRV.WBT+ ?; y* z0 z( l9 a/ m
D:\EasyBoot\WIN2K\IMG\W2DASRV.WBT h) Z8 Y$ m+ b
D:\EasyBoot\WIN2K\WPRO
: |; D, n) ]8 ~- E' t D:\EasyBoot\WIN2K\WSRV0 h, y; ?% ?8 s! R% u
D:\EasyBoot\WIN2K\ASRV
8 j% i+ [8 v( \: y5 j$ r D:\EasyBoot\WIN2K\CDROM_IA.5
$ U4 F$ [3 u: r M' m0 I D:\EasyBoot\WIN2K\CDROM_ID.5
( \+ K$ M$ _4 W* Q% Z# o D:\EasyBoot\WIN2K\CDROM_IP.5
8 |5 G( C+ J& l4 F, X7 [2 Z( S3 R D:\EasyBoot\WIN2K\CDROM_IS.5
) ^, ^) @2 y1 `. Y8 W# | D:\EasyBoot\WIN2K\CDROM_NT.5' g) P# p+ L7 x
D:\EasyBoot\WIN2K\CDROMSP3.TST
3 m! |1 A6 W1 a+ q( z D:\EasyBoot\WIN2K\BOOTFONT.BIN3 }2 ^+ F2 Y5 a) {4 `: r
D:\EasyBoot\WIN2K\SYSTEM\WIN2KWPRO( X: V2 ~& _8 l9 X
D:\EasyBoot\WIN2K\SYSTEM\WIN2KWSRV0 H' a* M) E7 Y3 n1 c2 a
D:\EasyBoot\WIN2K\SYSTEM\WIN2KASRV
/ o0 P5 u) o4 M7 Z D:\EasyBoot\WIN2K\WIN2000.BIN -> (我取名为 WIN2000.BIN,这个文件名任意取)( X5 J5 i4 ^+ k" ]& Y
D:\EasyBoot\WIN2K\LOADER.BIN
! C; v' g9 c6 x5 C+ S2 F建好以上目录和文件放好后
2 k( i) [- s: g3 {2 {9 \: ~②、复制文件
% Z* t/ y# H m4 l; C. f 接着开始按放三个版的文件,其中,D:\EasyBoot\WIN2K\ 是Windows 2000 3合1光盘的根目录,
8 L1 @, d: Z. a1 Q1 u( }D:\EasyBoot\WIN2K\SYSTEM\WIN2KWPRO 用于存放Windows 2000专业版文件。(光盘根目录下的全部文件)
% @" @0 O l4 w2 ?# [D:\EasyBoot\WIN2K\SYSTEM\WIN2KWSRV 用于存放Windows 2000服务器版文件,(光盘根目录下的全部文件)7 R, X/ }/ u* a: H0 S
D:\EasyBoot\WIN2K\SYSTEM\WIN2KASRV 用于存放Windows 2000高级服务器版文件,(光盘根目录下的全部文件)" I+ v2 }1 ]9 S x: i
将 Windows 2000 专业版光盘上的文件全部复制到 D:\EasyBoot\WIN2K\SYSTEM\WIN2KWPRO 目录。
9 h0 ~1 P) y5 U2 x将 Windows 2000 服务器版光盘上的文件全部复制到 D:\EasyBoot\WIN2K\SYSTEM\WIN2KWSRV 目录。$ }: |1 z+ k: X6 M: s
将 Windows 2000 高级服务器版光盘上的文件全部复制到 D:\EasyBoot\WIN2K\SYSTEM\WIN2KASRV 目录。
8 D6 G% |& b+ V* e/ g8 {必须确保复制了全部文件和子目录,包括具有系统和隐藏属性的。/ _0 F! z) J; ? x4 h! [
复制完毕后,清除 D:\EasyBoot\WIN2K\SYSTEM\下全部文件和子目录的系统、隐藏和只读属性。
6 Z' c: x3 Y3 D" J将 D:\EasyBoot\WIN2K\SYSTEM\WIN2KWPRO 目录下的 cdrom_ia.5 复制到 D:\EasyBoot\WIN2K\目录下,9 _2 D; h2 {4 ~* t! r* d7 ^
将 D:\EasyBoot\WIN2K\SYSTEM\WIN2KWSRV 目录下的 cdrom_is.5 复制到 D:\EasyBoot\WIN2K\目录下,
7 c' u( `+ Z3 N! O. I/ ]& C将 D:\EasyBoot\WIN2K\SYSTEM\WIN2KASRV 目录下的 cdrom_ip.5 和 cdrom_nt.5 复制到 D:\EasyBoot\WIN2K\目录下,
3 j. O. X* O( H0 S( |* ^# ]. Y0 ?③、集成 WINDOWS 2000 SP32 \4 n- X" \& K
这一步是把刚复制好的 WINDOWS 2000 三个版本进行集成为 WINDOWS 2000 SP3 ,首先到网上下载 WINSP3.EXE 升级文件,下载好后,用 WINRAR 解压到 D 盘下,然后打开 DOS 命令符,输入以下字符串:* }# [" I3 S1 C; J" _: F$ }' s* v
D:\W2Ksp3\i386\update\update /s:\EASYBOOT\WIN2K\SYSTEM\WIN2KWPRO (这个集成专业版)
8 e c; a7 A% mD:\W2Ksp3\i386\update\update /s:\EASYBOOT\WIN2K\SYSTEM\WIN2KWSRV (这个集成服务器版)- P7 ?6 Q6 o; i: Q- V% ]
D:\W2Ksp3\i386\update\update /s:\EASYBOOT\WIN2K\SYSTEM\WIN2KASRV (这个集成高级服务器版)
: X9 x1 T% H6 W' ~% {6 x 要点: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 光盘,
3 W, Y2 g: B' y1 N⑶、配置软盘组安装程序文件
- [, |- s& g/ Y$ V6 q. c, G2 s8 qD:\EasyBoot\WIN2K\WPRO
4 l1 a6 \% ~6 J! y% Q8 f% o. wD:\EasyBoot\WIN2K\WSRV
1 @6 ~2 `8 i/ t5 R/ k$ fD:\EasyBoot\WIN2K\ASRV
% D' [6 m* |5 a9 e$ v以上这三个目录是三个版本的软盘组目录:
2 }& m" {2 i5 f0 P# M- A 注意要点:我把这三个版本取名为大家通用的“WPRO”、“WSRV”、“WPRO”的软盘组,而软盘组目录名称是固定在这三个版本的启动文件里(比如我取名为 W2KWPRO.WBT、W2KWSRV.WBT、 W2KASRV.WBT 这三个文件,而这三个文件里面只能改动的字符长度是4个字符长度。- f2 v: q3 j- C: J5 }' s
Windows 2000正版光盘上有个bootdisk子目录,里面包含4张Windows 2000安装软盘镜像的img文件。用WinImg将各个版本bootdisk目录下的4个img文件分别释放到各自的系统文件目录下:
3 M& z% I: \. ~* U; t: ]将原版光盘根目录下的\bootdisk目录里的img文件全部释放到 D:\EasyBoot\WIN2K\WPRO\下。
+ R3 \" @- j( _6 G0 \将原版光盘根目录下的\bootdisk目录里的img文件全部释放到 D:\EasyBoot\WIN2K\WSRV\下。
& i0 L# @4 s1 R v' d将原版光盘根目录下的\bootdisk目录里的img文件全部释放到 D:\EasyBoot\WIN2K\ASRV\下。
$ |! q$ P6 B0 G2 N2 `9 \8 p) _: s. I要点:这是我们模拟软盘安装的关键,一定要连带system32目录(里面有两个文件)一起释放。还有把三个版本里面都有一个 I386 目录,在 I386 里面都有一个文件你必须把它复制到相应的软盘组里面去(文件名是 TXTSETUP.SIF) ,把原来的覆盖。4 k' [; J, K! Z! r9 @, E% ?* e
⑷、取启动文件
9 m% t2 |- I" k 用 WinISO 制作 WIN2000 镜像文件 ISO ,然后打开刚做好的镜像文件,取出启动文件,保存为 XXX.WBT(那一个版本都行)。
" z; Z" `3 P: a6 h W2 f⑸、修改文件* @3 q$ L* `5 f1 f
用 VC++(或其它软件)打开刚保存的 XXX.WBT 文件,找到这个字符串 SETUPLDR.BINBOOTFIX.BINI386 将其后面的 4 个字符(I386)修改为相应的 “WPRO”、“WSRV”、“ASRV”字符,分别把它保存为这三个启动文件 W2KWPRO.WBT、W2KWSRV.WBT、 W2KASRV.WBT ,这三个文件取名可以任意取。要存放在其他目录下,并相应修改目录结构。此外,还必须在后面的配置中进行相应修改。这三个文件修改好后,再找出软盘组里面的二个文件分别是setupldr.bin 和 txtsetup.sif,这二个文件修改如下:
. E7 f( E o s7 s: B& y* C6 z, [用 VC++(或其它软件)二进制打开 D:\EasyBoot\WIN2K\WPRO\setupldr.bin,找到“I386”,把“i386”替换为“WPRO”,共3处;0 A$ F) ~, @7 ^8 T
用 VC++(或其它软件)二进制打开 D:\EasyBoot\WIN2K\WSRV\setupldr.bin,找到“I386”,把“i386”替换为“WSRV”,共3处;7 i( j- E9 Q- o' h% }
用 VC++(或其它软件)二进制打开 D:\EasyBoot\WIN2K\ASRV\setupldr.bin,找到“I386”,把“i386”替换为“ASRV”,共3处。
; f; R( Z1 e( p, P: E' h( a& L8 i存盘退出。
+ ]3 d3 Q3 M3 W( v2 C, \用 VC++(或其它软件)打开 D:\EasyBoot\WIN2K\WPRO\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\SYSTEM\WIN2KWPRO\"”;& X; I- x) {) F1 ]7 [ T# e
用 VC++(或其它软件)打开 D:\EasyBoot\WIN2K\WSRV\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\SYSTEM\WIN2KWSRV\"”;
/ ?7 [4 Y" y: U& I8 n用 VC++(或其它软件)打开 D:\EasyBoot\WIN2K\ASRV\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\SYSTEM\WIN2KASRV\"”。
& D5 }0 z# B7 j1 q存盘退出。
' s: {/ s% Q+ B" a0 b4 D& B要点:这两个文件中的路径告诉安装程序从何处复制文件,必须与目录结构相匹配。8 q- V4 p: a6 K/ H
⑹、跳过输入产品序列号* |+ ~- V5 t9 ]. O \( w% [ X& v4 v
查找各个版本i386目录,找到文件setupp.ini,用记事本打开,将其中的“Pid=xxxxx000”修改为为“Pid=xxxxx270”,存盘退出。这一步不是必须的,只是图个方便。
* o, k g+ L+ E, \* F; b, X6 T' {⑺、 制作ISO文件, ]; X. I9 o; F- {5 q
配好和修改好以上文件与目录结构,就可以制作 ISO 镜像了,用 EasyBoot 制作是非常简单,只要点击“制作ISO”按扭,弹出一个对话框,在对话框里点优化光盘文件和其它设置,(优化光盘设置是必须点上的)然后点击“制作”,制作就开始了。
7 f- ~ J; V4 p$ r. @⑻、测试ISO文件
9 R- N% Z8 o5 _, g0 Q4 W9 v. `+ Y" ? 用 VMware 加载 WIN2000.ISO 文件,设置第1启动设备为光驱。从光盘启动后,系统首先显示信息用 EasyBoot 制作好的菜单,按相应的键后,就可启动相应安装版本。此后的安装与原版光盘的安装一致。需要逐个安装,以测试各个版本的完整性。
" a- h6 c) g# H& B$ q( f3 x⑼、烧录光盘
0 e( \8 k. d5 R: X3 QISO镜像文件测试无误后,即可用自己熟悉的烧录软件软件(例如Nero)将其烧录到光盘。 这样,一张可启动的Windows 2000 3合1光盘就制作完成了。
0 q, ^! z$ |- q; E; P" Z⑽、特色
# Y$ y. [8 j9 y8 ^* [7 x优点:用 EasyBoot 制作出来的与流行的 Windows 2000/XP N 合 1 光盘相比,上述方法制作的光盘目录结构更简洁,没有一个多余的文件,用 EasyBoot 制作出漂亮的彩色菜单(当然diskem1x也不能,但 EasyBoot 制作能)。
1 _& d9 W/ i* c+ F
2 H7 o8 g9 z+ q- k* z2 p[ 本帖最后由 zxq111 于 2007-3-5 22:37 编辑 ] |
|