如何自制光盘
“一张普通的700M光盘为什么能够存储1.27GB的东西?”1、一张光盘的容量是死的,是650M就是650M,是700M就是700M,就算超刻,能够多出50到100M也就很不容易了,所以一张光盘绝对不可能容下1个G以上的东西(DVD除外)。
2、有一种技术可以在光盘上制做一种文件,虽然这个文件的真实内容可能只有几个字节,但通过直接修改ISO文件,可以将这个文件做的有几个G那么大,你无法将它拷贝到硬盘上,这属于一种光盘加密技术。
3、另一种真正有用的技术是UNIX下的文件连接技术(到现在Windows的文件系统也不支持这种技术),光盘上的ISO文件系统是支持这种技术的。这种技术可以将文件内容完全相同的几个文件存储到同一个位置,但从目录上看却是不同的文件。这就是一张光盘上为什么可以集成Windows 2000的若干个版本的根本原因,对于不同版本的Windows 2000,其实其中大部分文件是相同的,只有少数文件不同,这样相同的文件放到相同的存储位置,不同的文件分别存储,加起来一张光盘也可以容下,但如果你复制到硬盘上这些文件就会被分开到不同的目录中,由于Windows的文件系统不支持这种技术,所以就会造成光盘上的内容放到硬盘上占用1个多G的情况。cdimage 加上 -o参数就可以实现这种文件存储优化功能。
“刻录各种启动光盘的经验小结,请各位高手批评指正”
研究了一周的时间,对于刻录各种启动光盘的原理与方法终有小成,在此期间,我主要参考了http://www.nu2.nu(英文网站,网站主人是一个32岁的荷兰人,名字叫Bart,喜欢搞自由软件,他的网站上很多是他写的免费软件,他使用的也全是免费软件。这个人写的软件十分厉害,可以说国内论坛上那些制做启动光盘的技术基本上来源于这个网站)、http://bbs.wwwfox.net的“无忧社区”的“光盘启动区”(也就是本论坛了:)中的部分帖子。闲话少说,咱们言归正传。
一、启动光盘的形式(从原理上来说)共有三种。
1、从光盘启动时模拟软驱(或者硬驱)的一种启动光盘,最常见的是模拟软驱(A:),这种光盘的引导区存储的一般为一张软盘的映象文件(可以使用Winimage软件制做,类似于HD-COPY的制做方法,但hd-copy制做的映象不能用于制做光盘启动映象文件)。基本制做方法(以Nero Burning-Rom为例):软盘映象 + CD-ROM(Boot)即可。
2、直接光盘启动形式的光盘:引导区存储的是一小段程序,这段程序直接运行光盘上的其它程序。例如Windows NT/2000/XP的安装光盘均为这种形式。
3、比第一种方法更进一步:直接从光盘启动,但是有多个引导映象文件(Multiple boot images),这种规范名为El Torito multiple boot image。前面的两种实际上属于同一种规范格式:El Torito single boot image。这里的这一段文字是我从http://www.nu2.nu/bootcd这一页上抄来的,里面有更详细的内容,可以自己参考。但是这种格式需要主板BIOS支持,事实上是很多主板不支持这种启动光盘(现象就是只能从第一个启动映象启动)。
2003.10.06新增:Bart's way to create bootable CD-Roms(用Bart的方法制做各种启动光盘,由Climbing翻译)
该页面的英文版原始链接:http://www.nu2.nu/bootcd。
二、具体的启动光盘刻录方法
了解多少规范都是没有用处的,关键是如何刻出一张符合要求的启动光盘,在这里我们使用一个叫mkisofs的软件(原来运行在unix系统下用来制做iso文件的工具),有了iso,我们就可以直接使用刻录软件将iso文件刻录到光盘上(例如:Nero的Burn Image功能)。mkisofs的软件下载位置:http://climbing.minidns.net/software/mkisofs-1.15a40.rar(这里提供的下载版本是 wwashington 在水木清华的 dfbb 以及COMMAN 等网友的工作基础上,深入探索、不断完善的一个版本。现在最新版的 mkisofs 可以通过加参数的方式来支持 dos 和 win 下面的 GBK 中文代码,而且它可以做基于MD5 技术的文件识别,实现 ISO 文件的空间优化,即节省存储空间。)在具体刻录过程中,建议使用Bart在http://www.nu2.nu/bootcd页面中提供的cdrpack + 相应光盘的addon中build.mak方式+最新版支持中文及优化的mkisofs(替换掉Bart提供的即可)方式来制做iso文件(注:现在Bart提供了更新的bcd 1.1.1来代替cdrpack)。不推荐使用网上提供的Make_ISO等软件(操作起来太复杂,而且没有说明),实际上Bart已经提供了大部分的mkisofs的参数,自己只需要少量修改部分参数即可(请参考Bart刻录光盘软件包中的bin\build.mak,bin\global.mak,cds\diskemu\build.mak 等文件)。在下面的具体刻录过程中,我会将相应的命令参数写出来(仅供参考)。这一段写的比较乱,实际上就是请你参考http://www.nu2.nu/bootcd那一页的内容将需要下载的东西下载下来,然后按照页面上的说明将一张张Bart推荐的启动光盘实例刻录出来(最好将刻录机关掉,只是用他提供的软件包中mkisofs及配置工具制做出光盘的iso映象),通过研究他的说明,你可以明白mkisofs这个命令的用法,从而进一步通过定制其参数来制做出适合自己需要的启动光盘。
在继续刻录操作之前,需要推荐几个软件:第一个是一个软件组合:VMware workstation(在2000/xp环境下虚拟机器) + Daemon Tools(虚拟光驱) + RAMDiskNT(虚拟软驱),这些软件可以到华军软件园搜索或者到www.superdown.com上找,这个软件组合可以在一个相当真实的虚拟环境中测试你制做的iso镜像文件及软件映象文件是否可用(并进一步配置等),请参考文章:http://www.wwwfox.net/testiso.htm。这篇文章中没有提及RAMDiskNT,但Daemon Tools虚拟的光驱可以作为虚拟机器中的物理光驱使用,受此启发,那么RAMDiskNT虚拟的软驱也可以作为虚拟机器中的物理软驱使用。另外需要用到的软件为:WinISO(iso镜象文件编辑软件)、Winimage(软盘及光盘映像制做软件)、UltraEdit(16进制及文本文件编辑器)、isobuster(支持很多光盘镜像格式)、Nero Burning-Rom(功能强大的刻录软件)等,这些软件在网上都比较好找,同样可以在上面提供的两个站点找。至于这些软件的注册或者破解,请搜索http://astalavista.box.sk。
作者注:上面提到的主要软件在本帖末尾都将提供可用的下载链接(2003年10月6日)
1、第一种光盘的制做(假设我们要将Win98的启动盘做入光盘,光盘启动时就好象使用Win98启动盘一样),两种方法:
(1) 使用Nero直接制做:先准备一张Win98启动盘,然后启动Nero,选择光盘的格式为CD-ROM(Boot),将98启动盘放入A:,然后在“Boot”标签选择使用“A:\”(或者将98启动盘使用Winimage制做成ima的镜像格式(不要使用IMZ),然后在“Image file”处选择那个映象文件即可->New,后面的操作与刻录正常的数据光盘相同。
(2) 使用mkisofs命令来制做启动镜像iso文件,先用Winimage将98的启动盘制做成的映象文件名为w98se.ima。假设我们工作在D:\cdr目录(要求该盘空闲空间至少在1.4G以上),在cdr目录下bin目录中存放mkisofs程序包,在cdr\iso目录中存放要制做的iso文件(命名为mycd.iso),在cdr\disk1目录中存放需要刻录到光盘上的所有文件,那么把w98se.ima文件放到disk1目录下,同样,你要把disk1目录当做你的光盘的根目录来组织你要刻录到光盘(即制做的iso文件)中的数据。组织好后,在cdr目录下运行如下命令:
bin\mkisofs.exe -J -N -l -no-iso-translate -relaxed-filenames -gbk4dos-filenames -gbk4win-filenames -optimize -v -volid "W98SEBOOT" -p "Climbing" -P
"Little Stone Corp." -A "Created 'Barts way' Bootable CD-ROM using MKISOFS" -eltorito-boot w98se.ima -hide w98se.ima -hide-joliet w98se.ima -hide boot.catalog -hide-joliet boot.catalog -o iso/mycd.iso disk1
命令中各参数解释如下(我不明白什么意思的就使用英文原来的解释):
-J制做Joliet文件系统,好象比iso9660的优点就是支持长文件名。
-N Omit version numbers from ISO9660 file names. This violates the ISO9660 standard, but no one really uses the version numbers anyway.
-l(-full-iso9660-filenames) Allow full 31 character filenames for ISO9660 names,好象就是允许文件名有31个字符
-no-iso-translateDo not translate illegal ISO characters '~', '-' and '#' (violates ISO9660),不转换文件名中的~、-、#等符号
-relaxed-filenames允许文件名中使用小写字符(不符合ISO9660规范)
-gbk4dos-filenames允许dos下的中文文件名(不符合ISO9660规范)
-gbk4win-filenames允许windows下的中文长文件名(不符合ISO9660规范)
-optimize优化iso文件存储(即所有目录中相同的文件只存储一份儿到iso文件中,节省存储空间,对于制做win2000三合一光盘特别有用)
-v(-verbose),在命令执行时显示详细的信息
-volid "W98SEBOOT"设置光盘短卷标,本例中设置为W98SEBOOT(即将光盘放入光驱后在光驱盘符上显示的卷标)
-p "Climbing"光盘制做人(自由设置)
-P "Little Stone Corp."光盘制做公司(自由设置)
-A "Created 'Barts way' Bootable CD-ROM using MKISOFS"设置应用ID(Application ID),自由设置
-eltorito-boot w98se.ima(-b)启动映象文件名(这一项设置十分关键,光盘能否启动,全在这一步)
-hide w98se.ima ISO9660隐藏文件,在dos下不可以看到,但在Windows下可以看到
-hide-joliet w98se.imaJoliet隐藏文件,无论在什么系统下均无法看到这个文件(在isobuster中可以看到)。
-hide boot.catalog -hide-joliet boot.catalog隐藏boot.catalog文件,这个文件好象在光盘上就是一个2K长的空白文件,由mkisofs命令自动生成。
-o iso/mycd.iso要生成的iso文件的存放路径及文件名(即destination)。
disk1 指定用来放入iso文件中的内容,可以有多个(即Source)。
mkisofs命令英文版的man page链接为:http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/man/mkisofs-1.13.html,注意,这个英文版的使用说明中不包括-gbk4dos-filenames、-gkb4win-filenames、-optimize这三个参数,因为这三个参数是由国内高手wwashington在英文原版的mkisofs源码的基础上修改而来的,也就是说,Bart提供的刻录光盘制做包中包括的mkisofs并不支持这三个参数,在实际制做光盘iso文件时,务必使用wwashington的修改版本(即:http://climbing.minidns.net/software/mkisofs-1.15a40.rar)。在后面提供的mkisofs命令行参数中,与上面重复的我不再解释,只解释那些不同的。
2、第二种光盘的制做:以Windows XP的启动光盘为例,目录设置同例1。制做XP启动光盘时(2000、NT4的启动光盘与XP的制做方法完全相同)需要一个关键的文件为w2ksect.dat文件,这个文件就是光盘的引导区文件,这个文件可以从Bart在http://www.nu2.nu/bootcd页面上提供的wxp_addon.zip(http://www.nu2.nu/nu2files/wxp_addon.zip)文件中取得,这个文件在无忧启动论坛上也叫w2ksect.bin,我们在下面的命令行中将其取名为wxpsect.bin,另外在i386目录下有一个bootfix.bin,这个文件的作用就是如果xp的安装光盘发现C盘是可引导的,那么用光盘启动时就会提示Press any key to boot from CD,然后等待五秒,如果用户不按键,就会启动C盘上的系统。将wxpsect.bin文件放在disk1目录下,然后将xp光盘上的所有内容也放到disk1目录下,尤其是根目录下有bootfont.bin,WIN51IP,win51等,关于在disk1目录下放哪些文件,请参考无忧启动论坛上的这些技术文章(http://www.wwwfox.net/win2k.htm,http://www.wwwfox.net/win2k1.htm,http://www.wwwfox.net/win2k2.htm,http://www.wwwfox.net/winxp.htm),这些文章中都是用CDIMAGE命令来制做iso文件,我只能说mkisofs是比cdimage功能更强的制做iso文件的工具,但其用法要比cdimage复杂上百倍。当然,你也可以在disk1目录下放置你自己定义的内容,例如XP的所有补丁程序等(估量着不要刻不下就行了)。文件组织好后(怎么算组织好,请参考前面的文章或者Bart的介绍)。在cdr目录下执行下面的命令:
bin\mkisofs.exe -J -N -l -no-iso-translate -relaxed-filenames -gbk4dos-filenames -gbk4win-filenames -optimize -v -volid "WINXPPROCHS" -p "Climbing" -P "Little Stone Corp." -A "Created 'Barts way' ISO using mkisofs" -no-emul-boot -eltorito-boot wxpsect.bin -hide wxpsect.bin -hide boot.catalog -hide-joliet wxpsect.bin -hide-joliet boot.catalog -o iso/myxpcd.iso disk1
这一次多了一个参数就是:
-no-emul-boot非模仿软驱或者硬盘启动方式,即区别于使用软驱映像启动方式,光盘启动时不再模仿从软驱启动,而是直接执行wxpsect.bin文件来进入安装程序。
3、第三种光盘的制做,即多映像文件启动方式。在实际使用中我并没有试验制做这种光盘,但Bart提供了这种光盘的制做方法,大家可以参照他的说明制做一张来试试,在mkisofs中与启动映象相关的参数如下(其它参数略,因为我没有试验,大体应该与上面的设置相同):
-hide boot.catalog -hide-joliet boot.catalog\
-eltorito-boot cdrom.img -hide cdrom.img -hide-joliet cdrom.img \
-eltorito-alt-boot \
-eltorito-boot msnet.img -hide msnet.img -hide-joliet msnet.img \
-eltorito-alt-boot \
-eltorito-boot scsitool.img -hide scsitool.img -hide-joliet scsitool.img \
-eltorito-alt-boot \
-eltorito-boot cpuid.img -hide cpuid.img -hide-joliet cpuid.img
上面命令中的“\”表示命令行连接符的意思,也就是说这些命令应该都在一行上,在win2000的dos提示符下使用时请去掉这些字符,因为win2000并不支持这种写法。
这些参数中一个关键的参数即为:-eltorito-alt-boot,而cdrom.img, msnet.img, scsitool.img, cpuid.img是多个启动软盘的映像文件。
与这种制做方法类似的另一种制做方法请参考无忧启动论坛的这篇文章:http://www.wwwfox.net/nin1.htm。
需要注意的是:这种多个启动映象文件的格式可能不会被某些主板支持,并不推荐这种做法。
4、集大成者,也是Bart给我们贡献最大的多映象启动光盘制做方法(此种方法绝对不会产生主板bios不支持的问题):loader.bin + diskemu1x.bin + diskemu.cmd方式。这种方式是我所知的最先进的方式,也是无忧启动论坛及国内启动光盘制做论坛目前使用最多的技术,与此类似的技术还有isolinux/memdisk技术(注:现在这种多映像光盘启动程序是太多了,例如BootScript、BCDW等,2003.10.06),其原理相同,Bart在网站上有详细介绍,请自行参考。
先说原理:所有的主板都支持一个启动文件(Single Boot image)的启动方法,那么可以做一个小的系统供启动程序调用(由这个系统来模拟一个BIOS),而这个模拟的BIOS系统可以接着调用其它的映象文件来启动系统,你可以同时将很多启动映象文件刻入光盘(包括模拟软驱的、不模拟软驱直接启动的),然后在光盘启动时,由这个模拟的BIOS系统进一步调用各个启动映象文件来启动系统。
Bart提供的loader.bin就是那个光盘启动程序,而loader.bin的目的就是将那个模拟的BIOS系统diskemu1x.bin由光盘调入并运行,而diskemu.cmd文件则用来配置开机启动时有哪里启动映象文件可以供diskemu1x.bin文件来进一步调用。
这种方法经过国内高手们的改进,启动菜单可以支持中文(并且可以通过上、下键选择相应的菜单条),请参考帖子:http://www.wwwfox.net/cgi-bin/topic.cgi?forum=2&topic=4550&show=0 及 http://www.wwwfox.net/cgi-bin/topic.cgi?forum=2&topic=2464,事实上有很多版本的中文菜单制做程序(有的甚至可以做子菜单),方法较复杂,咱们还是先以Bart的方法为主,搞清楚状况后再进行美化。
使用mkisofs制做Bart方式的多启动光盘的方法:首先将loader.bin、diskemu1x.bin 及diskemu.cmd文件(这些文件可以从Bart的网站上获得:http://www.nu2.nu/nu2files/single_diskemu_addon.zip)放到disk1目录下,然后可以在disk1\BootImg目录下存放各个需要加入启动菜单的映象文件,然后再用文本编辑器编辑diskemu.cmd文件,定义出适合于自己光盘的启动菜单供diskemu.bin使用。下面是我的制做实例:
bin\mkisofs.exe -J -N -l -no-iso-translate -relaxed-filenames -gbk4dos-filenames -gbk4win-filenames -optimize -v -volid "WinXpProCHS" -p "Climbing" -P "Little Stone Corp." -A "Created 'Barts way' Boot CD-ROM using MKISOFS" -no-emul-boot -eltorito-boot loader.bin -hide loader.bin -hide boot.catalog -hide-joliet loader.bin -hide-joliet boot.catalog -o iso/diskemucd.iso disk1
diskemu.cmd文件的内容如下:
;
; diskemu.cmd sample file v0.8
; Created by Bart Lagerweij
;
; Some notes:
; - do not use tabs in this file! Use spaces!
; - the key "tags" like "esc", "entr", ... must be lowercase!
;
; [*** Added by customer users ***]
; diskemu.com for Windows XP Pro Setup Disc
; Modified by Little Stone on 2002.07.19
; E-mail: littlestone@netease.com
:start
cls
print ------------------------------------------------------------------------------
print Bootable CD main menu http://www.nu2.nu/diskemu
print ------------------------------------------------------------------------------
print F1=Help
print 0) Windows XP Pro Setup
print 1) Windows 98SE Boot Disk
print 2) Bart Network Boot Disk
print 3) Bart CD-ROM Boot Disk
print 4) NT Password Editor
print 5) Bart SCSI Utilities
print a) Boot floppy
print c) Boot first harddisk
print q) Quit to command prompt
print r) Reboot
print Hit the key of choice(Timout=20sec, Default=0):
:mainkey
; timeout is 20 seconds, default key is key 0
getkey 20 0
onkey 0 goto winxp
onkey 1 goto w98se
onkey 2 goto net
onkey 3 goto cdrom
onkey 4 goto editpasswd
onkey 5 goto scsi
onkey a boot 0
onkey c boot 80
onkey q quit
onkey r reboot
onkey esc goto winxp
onkey spc goto winxp
onkey entr goto winxp
onkey f1 goto help
onkey 0x1C0D goto winxp
; When no key found...
goto winxp
;*** HELP ***
:help
cls
print HELP
print ----
print Here you can type help for your customers
print Press any key to return to main menu
getkey
goto start
;***Start Windows XP Boot Installation***
:winxp
print Start to install the Windows Xp in Normal Mode
cd BootImg
run wxpsect.bin
getkey
goto start
;*** Boot the Bart DOS network Boot Image ***
:net
print Starting Bart Network on DOS Boot
cd BootImg
run net.ima
getkey
goto start
;*** Boot Win98SE DOS Image ***
:w98se
print Boot Windows 98 SE dos prompt
cd BootImg
run w98se.ima
getkey
goto start
;*** Boot Bart CD-ROM Boot Disk ***
:cdrom
print Boot Bart CD-ROM Boot Disk
cd BootImg
run cdrom.ima
getkey
goto start
;*** Boot Bart SCSI-Tool Boot Disk ***
:scsi
print Boot Bart SCSI-Tool Boot Disk
cd BootImg
run scsi.ima
getkey
goto start
;*** Starting Edit Windows NT/2000 Adminitrator Password Tools
:editpasswd
print Edit NT or Windows 2000 Administrator Password
cd BootImg
run ntpass.ima
getkey
goto start
;
; EOF
这种光盘的启动效果如何,自己做一张就知道了,因为我不方便贴图片,这里就不演示了,有一个详细的说明帖子(来自www.2hacks.org):http://www.2hackers.org/classroom/cdr/2hackers.cd.htm,这个帖子里讲的比较详细,自己参照着来就好了。
唉,写到这里发觉自己真是白痴,费了这么大的力气,不知道有没有把问题说清楚。在这篇总结文章里引用了很多高手的著作,无法一一注明的,请各位高手原谅,特别感谢Bart高手、wwashington大虾(没有他的中文版mkisofs,一切都是白扯)、无忧社区CEO wwwfox大虾、萧十 and 一郎两位黑客、xhwfq(中文启动菜单高手)等大虾的帮助与指导,文章写的很仓促,是在UltraEdit中完成的,因此无法插入可以直接访问的链接与图片,只是给出了URL地址。而且定有很多错误之外,望各位高手批评指正,再次感谢!
附1:diskemu.cmd文件中可以使用的命令请参考:http://www.nu2.nu/diskemu网页上的介绍,这些命令同样可以用在diskemu1x.bin提供的命令提示符下。
附2:mkisofs(wwashington高手制做版)命令行各参数的简要说明
Usage: mkisofs file...
Options:
-nobak Do not include backup files
-no-bak Do not include backup files
-abstract FILE Set Abstract filename
-A ID, -appid ID Set Application ID
-biblio FILE Set Bibliographic filename
-cache-inodes Cache inodes (needed to detect hard links)
-no-cache-inodes Do not cache inodes (if filesystem has no unique unides)
-check-oldnames Check all imported ISO9660 names from old session
-check-session FILE Check all ISO9660 names from previous session
-copyright FILE Set Copyright filename
-debug Set debug flag
-b FILE, -eltorito-boot FILE
Set El Torito boot image name
-eltorito-alt-boot Start specifying alternative El Torito boot parameters
-B FILES, -sparc-boot FILES Set sparc boot image names
-G FILE, -generic-boot FILE Set generic boot image name
-sparc-label label text Set sparc boot disk label
-c FILE, -eltorito-catalog FILE
Set El Torito boot catalog name
-C PARAMS, -cdrecord-params PARAMS
Magic paramters from cdrecord
-d, -omit-period Omit trailing periods from filenames (violates ISO9660)
-dir-mode mode Make the mode of all directories this mode.
-D, -disable-deep-relocation
Disable deep directory relocation (violates ISO9660)
-file-mode mode Make the mode of all plain files this mode.
-f, -follow-links Follow symbolic links
-gid gid Make the group owner of all files this gid.
-graft-points Allow to use graft points for filenames
-help Print option help
-hide GLOBFILE Hide ISO9660/RR file
-hide-list FILE File with list of ISO9660/RR files to hide
-hidden GLOBFILE Set hidden attribute on ISO9660 file
-hidden-list FILE File with list of ISO9660 files with hidden attribute
-hide-joliet GLOBFILE Hide Joliet file
-hide-joliet-list FILE File with list of Joliet files to hide
-hide-joliet-trans-tbl Hide TRANS.TBL from Joliet tree
-hide-rr-moved Rename RR_MOVED to .rr_moved in Rock Ridge tree
-gui Switch behaviour for GUI
-i ADD_FILES No longer supported
-input-charset CHARSET Local input charset for file name conversion
-output-charset CHARSET Output charset for file name conversion
-iso-level LEVEL Set ISO9660 conformance level (1..3)
-J, -joliet Generate Joliet directory information
-jcharset CHARSET Local charset for Joliet directory information
-l, -full-iso9660-filenames Allow full 31 character filenames for ISO9660 names
-max-iso9660-filenames Allow 37 character filenames for ISO9660 names (violates ISO9660)
-L, -allow-leading-dots Allow ISO9660 filenames to start with '.' (violates ISO9660)
-log-file LOG_FILE Re-direct messages to LOG_FILE
-m GLOBFILE, -exclude GLOBFILE
Exclude file name
-exclude-list FILE File with list of file names to exclude
-pad Pad outout to a multiple of 32k (default)
-no-pad Do not pad output to a multiple of 32k
-M FILE, -prev-session FILE Set path to previous session to merge
-N, -omit-version-number Omit version number from ISO9660 filename (violates ISO9660)
-new-dir-mode mode Mode used when creating new directories.
-force-rr Inhibit automatic Rock Ridge detection for previous session
-no-rr Inhibit reading of Rock Ridge attributes from previous session
-no-split-symlink-components
Inhibit splitting symlink components
-no-split-symlink-fields Inhibit splitting symlink fields
-o FILE, -output FILE Set output file name
-O, -optimize Optimize for iso space(md5 technology)
-path-list FILE File with list of pathnames to process
-p PREP, -preparer PREP Set Volume preparer
-print-size Print estimated filesystem size and exit
-P PUB, -publisher PUB Set Volume publisher
-quiet Run quietly
-r, -rational-rock Generate rationalized Rock Ridge directory information
-R, -rock Generate Rock Ridge directory information
-sort FILE Sort file content locations according to rules inFILE
-split-output Split output into files of approx. 1GB size
-sysid ID Set System ID
-T, -translation-table Generate translation tables for systems that don't understand long filenames
-table-name TABLE_NAME Translation table file name
-ucs-level LEVEL Set Joliet UCS level (1..3)
-udf Generate UDF file system
-uid uid Make the owner of all files this uid.
-U, -untranslated-filenames Allow Untranslated filenames (for HPUX & AIX - violates ISO9660). Forces -l, -d, -L, -N, -relaxed-filenames, -allow-lowercase, -allow-multidot
-relaxed-filenames Allow 7 bit ASCII except lower case characters (violates ISO9660)
-gbk4dos-filenames Allow 8 bit ASCII GBK standard code characters (violates ISO9660)
-gbk4win-filenames Allow 8 bit ASCII GBK standard code characters (violates ISO9660)
-no-iso-translate Do not translate illegal ISO characters '~', '-' and '#' (violates ISO9660)
-allow-lowercase Allow lower case characters in addition to the current character set (violates ISO9660)
-allow-multidot Allow more than one dot in filenames (e.g. .tar.gz) (violates ISO9660)
-use-fileversion LEVEL Use file version # from filesystem
-v, -verbose Verbose
-version Print the current version
-V ID, -volid ID Set Volume ID
-volset ID Set Volume set ID
-volset-size # Set Volume set size
-volset-seqno # Set Volume set sequence number
-x FILE, -old-exclude FILE Exclude file name(depreciated)
-hard-disk-boot Boot image is a hard disk image
-no-emul-boot Boot image is 'no emulation' image
-no-boot Boot image is not bootable
-boot-load-seg # Set load segment for boot image
-boot-load-size # Set numbers of load sectors
-boot-info-table Patch boot image with info table
-z, -transparent-compression
Enable transparent compression of files
-hfs-type TYPE Set HFS default TYPE
-hfs-creator CREATOR Set HFS default CREATOR
-g, -apple Add Apple ISO9660 extensions
-h, -hfs Create ISO9660/HFS hybrid
-H MAPPING_FILE, -map MAPPING_FILE
Map file extensions to HFS TYPE/CREATOR
-magic FILE Magic file for HFS TYPE/CREATOR
-probe Probe all files for Apple/Unix file types
-mac-name Use Macintosh name for ISO9660/Joliet/RockRidge file name
-no-mac-files Do not look for Unix/Mac files (depreciated)
-boot-hfs-file FILE Set HFS boot image name
-part Generate HFS partition table
-cluster-size SIZE Cluster size for PC Exchange Macintosh files
-auto FILE Set HFS AutoStart file name
-no-desktop Do not create the HFS (empty) Desktop files
-hide-hfs GLOBFILE Hide HFS file
-hide-hfs-list FILE List of HFS files to hide
-hfs-volid HFS_VOLID Volume name for the HFS partition
-icon-position Keep HFS icon position
-root-info FILE finderinfo for root folder
-input-hfs-charset CHARSET Local input charset for HFS file name conversion
-output-hfs-charset CHARSET Output charset for HFS file name conversion
-hfs-unlock Leave HFS Volume unlocked
-hfs-bless FOLDER_NAME Name of Folder to be blessed
-prep-boot FILE PReP boot image file -- up to 4 are allowed
--cap Look for AUFS CAP Macintosh files
--netatalk Look for NETATALK Macintosh files
--double Look for AppleDouble Macintosh files
--ethershare Look for Helios EtherShare Macintosh files
--exchange Look for PC Exchange Macintosh files
--sgi Look for SGI Macintosh files
--macbin Look for MacBinary Macintosh files
--single Look for AppleSingle Macintosh files
--ushare Look for IPT UShare Macintosh files
--xinet Look for XINET Macintosh files
--dave Look for DAVE Macintosh files
--sfm Look for SFM Macintosh files
相关软件下载:
1、请访问下面的链接(链接到我的论坛上):
http://climbing.minidns.net/dvbbs/dispbbs.asp?boardID=6&ID=181
2、由大侠Wwashington修改并出品的支持中文以及基于md5技术的空间优化等功能的mkisofs 1.15版:841KB。
3、Bart的bcd 1.1.1经过我修改后的版本:4259KB,包含上面的新版mkisofs,同时包含cdimage,详细使用方法请参考Bart的网站:http://www.nu2.nu/bootcd。
这篇文章详细讲述了Windows 2000 3合1光盘及Windows XP 2合1光盘的详细制做步骤,当然,在生成ISO文件的过程中,EasyBoot还是调用cdimage进行光盘的存储优化并生成ISO文件的。我们学习的是其目录组织的步骤(当然,你可以根据自己的需要修改相应的目录结构)及相应引导文件的修改方法,这可以算是一篇制做Windows N in 1光盘的入门教程。强烈推荐新手认真学习!
Windows 2000 3 合 1 与 Windows XP 2 合 1 启动光盘的最新制作方法
Windows 2000 3合1光盘(简体中文专业版+简体中文服务器版+简体中文高级服务器版)已经在街面上流行1年多了,Windows XP 2合1的光盘(简体中文专业版+简体中文家庭版)最近也开始上街了。这些 N 合 1 的光盘中,有些是不能用光盘进行启动的,我们只能在DOS下安装;有些是能够光盘启动并从光盘正常安装的。不能启动的 N 合 1 光盘的制作非常简单,我们没有必要去讨论,我们最感兴趣的是哪些能够用光盘启动并正常安装的 N 合 1 光盘,本文的宗旨就是研究一下这类光盘的基本原理及制作方法。
可启动型 N 合 1 光盘使用了多重启动光盘技术,这种技术近几年来开始流行,但目前尚未形成统一的工业标准,有多种方法可以实现它。目前制作启动 N 合 1 的软件很少,即有也很复杂,本人用 EasyBoot 制作的 Windows 2000 3 合 1 光盘。由于 EasyBoot 附带的说明非常简短,网上更是无法查找到相关的信息,有鉴于此,我对它进行了一番研究,用 EasyBoot 成功地制作出了Windows 2000 3 合 1 光盘。经过另一番试验,又成功地制作出了Windows XP 2 合 1光盘。下面就是我的一些心得体会,愿与各位朋友共享。
一、Windows 2000/XP多重启动光盘的启动原理
Windows 2000/XP各版本的原始安装光盘是单重启动,其引导文件中固化了光盘根目录下的i386目录(这一点给制作多重启动的 N 合 1 光盘带来了最大的障碍),该目录中不仅存放了Windows 2000/XP的系统文件,而且还存放了安装所需的安装文件和驱动程序。其引导过程如下:
先加载光盘引导文件(引导文件比如是 WIN2000.WBT),加载过程: WIN2000.WBT->setupldr.bin->ntdetect.com->再加载驱动程序->读txtsetup.sif->开始光盘安装
上述多个步骤中都涉及了光盘根目录下的i386目录,而我们将制作的 N 合 1 光盘是多重启动的,每个版本都包含一个i386子目录,它与单重启动光盘的目录结构不同(在光盘根目录与i386目录之间多了1层版本目录),因此不能简单地照搬单重启动的引导过程。所幸前辈高手们早就碰到了这个难题,而且也非常巧妙地解决了,那就是使用Windows 2000/XP的安装软盘组:用软盘启动计算机,依次加载所需驱动程序及必要的系统文件,从而避开安装时到光盘根目录下的i386目录加载安装文件和驱动程序,然后安装程序再从Windows 2000/XP安装光盘中安装复制其余的文件,继续安装。我们所要模拟的就是这一过程。改造后的 N 合 1 光盘引导过程如下:
光盘引导->选择版本模块->模拟软盘启动->setupldr.bin->ntdetect.com->再加载驱动程序->读txtsetup.sif->开始光盘安装。
并将上述多个步骤中都涉及到的光盘根目录下的 i386 目录,现在要把它放在双层目录下,光盘根目录中将存放安装软盘组。
二、Windows 2000 3 合 1 启动光盘的制作
⑴、所需工具
①、 EasyBoot V3.2 光盘制作软件,下载地址:http://www.ultraiso.com/easyboot/cn/index.html
②、制作 Windows 2000 安装软盘组的img文件。可替换方法是制作4张安装软盘,然后将4张软盘上的全部文件复制到硬盘相应目录下。
制作软盘组软件,下载地址:http://www.winimage.com/winimage/winima60.zip
③、能打开二进制的软件 Microsoft Visual C++,精简版,下载地址:http://www.yy-china.net/htm/hhgj.htm
④、Windows 2000 安装软盘组
必须用软盘引导机器,加载必要的系统文件及基本驱动程序,然后从光盘继续安装。
Windows 2000 安装软盘组在正版光盘的 bootdisk 目录下,三个版本的安装软盘是不同的,不能混用。
⑤、虚拟电脑软件 VMware(或Virtual PC)和刻录软件 Nero
可选,用来测试制作完成的3合1镜像文件并烧录光盘。
⑥、WinISO 这个软件用来编辑镜像和取出启动文件(XXX.WBT)
⑵、 目录及文件结构
保证硬盘上有足够的空间(假设将文件存放在默认的 EasyBoot 文件夹下 D:\EasyBoot\WIN2K,全部三个版本的原始文件约占用空间为1.24 GB,生成的镜像文件约为520 MB 左右),建立的目录结构如下:
①、建立目录结构及文件位置
D:\EasyBoot\WIN2K
D:\EasyBoot\WIN2K\IMG
D:\EasyBoot\WIN2K\IMG\W2KWPRO.WBT
D:\EasyBoot\WIN2K\IMG\W2KWSRV.WBT
D:\EasyBoot\WIN2K\IMG\W2DASRV.WBT
D:\EasyBoot\WIN2K\WPRO
D:\EasyBoot\WIN2K\WSRV
D:\EasyBoot\WIN2K\ASRV
D:\EasyBoot\WIN2K\CDROM_IA.5
D:\EasyBoot\WIN2K\CDROM_ID.5
D:\EasyBoot\WIN2K\CDROM_IP.5
D:\EasyBoot\WIN2K\CDROM_IS.5
D:\EasyBoot\WIN2K\CDROM_NT.5
D:\EasyBoot\WIN2K\CDROMSP3.TST
D:\EasyBoot\WIN2K\BOOTFONT.BIN
D:\EasyBoot\WIN2K\SYSTEM\WIN2KWPRO
D:\EasyBoot\WIN2K\SYSTEM\WIN2KWSRV
D:\EasyBoot\WIN2K\SYSTEM\WIN2KASRV
D:\EasyBoot\WIN2K\WIN2000.BIN -> (我取名为 WIN2000.BIN,这个文件名任意取)
D:\EasyBoot\WIN2K\LOADER.BIN
建好以上目录和文件放好后
②、复制文件
接着开始按放三个版的文件,其中,D:\EasyBoot\WIN2K\ 是Windows 2000 3合1光盘的根目录,
D:\EasyBoot\WIN2K\SYSTEM\WIN2KWPRO 用于存放Windows 2000专业版文件。(光盘根目录下的全部文件)
D:\EasyBoot\WIN2K\SYSTEM\WIN2KWSRV 用于存放Windows 2000服务器版文件,(光盘根目录下的全部文件)
D:\EasyBoot\WIN2K\SYSTEM\WIN2KASRV 用于存放Windows 2000高级服务器版文件,(光盘根目录下的全部文件)
将 Windows 2000 专业版光盘上的文件全部复制到 D:\EasyBoot\WIN2K\SYSTEM\WIN2KWPRO 目录。
将 Windows 2000 服务器版光盘上的文件全部复制到 D:\EasyBoot\WIN2K\SYSTEM\WIN2KWSRV 目录。
将 Windows 2000 高级服务器版光盘上的文件全部复制到 D:\EasyBoot\WIN2K\SYSTEM\WIN2KASRV 目录。
必须确保复制了全部文件和子目录,包括具有系统和隐藏属性的。
复制完毕后,清除 D:\EasyBoot\WIN2K\SYSTEM\下全部文件和子目录的系统、隐藏和只读属性。
将 D:\EasyBoot\WIN2K\SYSTEM\WIN2KWPRO 目录下的 cdrom_ia.5 复制到 D:\EasyBoot\WIN2K\目录下,
将 D:\EasyBoot\WIN2K\SYSTEM\WIN2KWSRV 目录下的 cdrom_is.5 复制到 D:\EasyBoot\WIN2K\目录下,
将 D:\EasyBoot\WIN2K\SYSTEM\WIN2KASRV 目录下的 cdrom_ip.5 和 cdrom_nt.5 复制到 D:\EasyBoot\WIN2K\目录下,
③、集成 WINDOWS 2000 SP3
这一步是把刚复制好的 WINDOWS 2000 三个版本进行集成为 WINDOWS 2000 SP3 ,首先到网上下载 WINSP3.EXE 升级文件,下载好后,用 WINRAR 解压到 D 盘下,然后打开 DOS 命令符,输入以下字符串:
D:\W2Ksp3\i386\update\update /s:D:\EASYBOOT\WIN2K\SYSTEM\WIN2KWPRO (这个集成专业版)
D:\W2Ksp3\i386\update\update /s:D:\EASYBOOT\WIN2K\SYSTEM\WIN2KWSRV (这个集成服务器版)
D:\W2Ksp3\i386\update\update /s:D:\EASYBOOT\WIN2K\SYSTEM\WIN2KASRV (这个集成高级服务器版)
要点: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 光盘,
⑶、配置软盘组安装程序文件
D:\EasyBoot\WIN2K\WPRO
D:\EasyBoot\WIN2K\WSRV
D:\EasyBoot\WIN2K\ASRV
以上这三个目录是三个版本的软盘组目录:
注意要点:我把这三个版本取名为大家通用的“WPRO”、“WSRV”、“WPRO”的软盘组,而软盘组目录名称是固定在这三个版本的启动文件里(比如我取名为 W2KWPRO.WBT、W2KWSRV.WBT、 W2KASRV.WBT 这三个文件,而这三个文件里面只能改动的字符长度是4个字符长度。
Windows 2000正版光盘上有个bootdisk子目录,里面包含4张Windows 2000安装软盘镜像的img文件。用WinImg将各个版本bootdisk目录下的4个img文件分别释放到各自的系统文件目录下:
将原版光盘根目录下的\bootdisk目录里的img文件全部释放到 D:\EasyBoot\WIN2K\WPRO\下。
将原版光盘根目录下的\bootdisk目录里的img文件全部释放到 D:\EasyBoot\WIN2K\WSRV\下。
将原版光盘根目录下的\bootdisk目录里的img文件全部释放到 D:\EasyBoot\WIN2K\ASRV\下。
要点:这是我们模拟软盘安装的关键,一定要连带system32目录(里面有两个文件)一起释放。还有把三个版本里面都有一个 I386 目录,在 I386 里面都有一个文件你必须把它复制到相应的软盘组里面去(文件名是 TXTSETUP.SIF) ,把原来的覆盖。
⑷、取启动文件
用 WinISO 制作 WIN2000 镜像文件 ISO ,然后打开刚做好的镜像文件,取出启动文件,保存为 XXX.WBT(那一个版本都行)。
⑸、修改文件
用 VC++(或其它软件)打开刚保存的 XXX.WBT 文件,找到这个字符串 SETUPLDR.BINBOOTFIX.BINI386 将其后面的 4 个字符(I386)修改为相应的 “WPRO”、“WSRV”、“ASRV”字符,分别把它保存为这三个启动文件 W2KWPRO.WBT、W2KWSRV.WBT、 W2KASRV.WBT ,这三个文件取名可以任意取。要存放在其他目录下,并相应修改目录结构。此外,还必须在后面的配置中进行相应修改。这三个文件修改好后,再找出软盘组里面的二个文件分别是setupldr.bin 和 txtsetup.sif,这二个文件修改如下:
用 VC++(或其它软件)二进制打开 D:\EasyBoot\WIN2K\WPRO\setupldr.bin,找到“I386”,把“i386”替换为“WPRO”,共3处;
用 VC++(或其它软件)二进制打开 D:\EasyBoot\WIN2K\WSRV\setupldr.bin,找到“I386”,把“i386”替换为“WSRV”,共3处;
用 VC++(或其它软件)二进制打开 D:\EasyBoot\WIN2K\ASRV\setupldr.bin,找到“I386”,把“i386”替换为“ASRV”,共3处。
存盘退出。
用 VC++(或其它软件)打开 D:\EasyBoot\WIN2K\WPRO\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\SYSTEM\WIN2KWPRO\"”;
用 VC++(或其它软件)打开 D:\EasyBoot\WIN2K\WSRV\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\SYSTEM\WIN2KWSRV\"”;
用 VC++(或其它软件)打开 D:\EasyBoot\WIN2K\ASRV\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\SYSTEM\WIN2KASRV\"”。
存盘退出。
要点:这两个文件中的路径告诉安装程序从何处复制文件,必须与目录结构相匹配。
⑹、跳过输入产品序列号
查找各个版本i386目录,找到文件setupp.ini,用记事本打开,将其中的“Pid=xxxxx000”修改为为“Pid=xxxxx270”,存盘退出。这一步不是必须的,只是图个方便。
⑺、 制作ISO文件
配好和修改好以上文件与目录结构,就可以制作 ISO 镜像了,用 EasyBoot 制作是非常简单,只要点击“制作ISO”按扭,弹出一个对话框,在对话框里点优化光盘文件和其它设置,(优化光盘设置是必须点上的)然后点击“制作”,制作就开始了。
⑻、测试ISO文件
用 VMware 加载 WIN2000.ISO 文件,设置第1启动设备为光驱。从光盘启动后,系统首先显示信息用 EasyBoot 制作好的菜单,按相应的键后,就可启动相应安装版本。此后的安装与原版光盘的安装一致。需要逐个安装,以测试各个版本的完整性。
⑼、烧录光盘
ISO镜像文件测试无误后,即可用自己熟悉的烧录软件软件(例如Nero)将其烧录到光盘。这样,一张可启动的Windows 2000 3合1光盘就制作完成了。
⑽、特色
优点:用 EasyBoot 制作出来的与流行的 Windows 2000/XP N 合 1 光盘相比,上述方法制作的光盘目录结构更简洁,没有一个多余的文件,用 EasyBoot 制作出漂亮的彩色菜单(当然diskem1x也不能,但 EasyBoot 制作能)。
二、制作 WINDOWS XP 2 合 1
⑴、所需工具
①、 EasyBoot V3.2 光盘制作软件,下载地址:http://www.ultraiso.com/easyboot/cn/index.html
②、制作 Windows XP 安装软盘组的img文件。可替换方法是制作 6 张安装软盘,然后将 6 张软盘上的全部文件复制到硬盘相应目录下。
制作软盘组软件,下载地址:http://www.winimage.com/winimage/winima60.zip
③、能打开二进制的软件 Microsoft Visual C++,精简版,下载地址:http://www.yy-china.net/htm/hhgj.htm
④、Windows XP 安装软盘组
必须用软盘引导机器,加载必要的系统文件及基本驱动程序,然后从光盘继续安装。
Windows XP 安装软盘组正版光盘没有随带,需要到微软网站上去下载,二个版本都要下载下来,因为二个版本不能混用。
⑤、虚拟电脑软件 VMware(或Virtual PC)和刻录软件 Nero
可选,用来测试制作完成的3合1镜像文件并烧录光盘。
⑥、WinISO 这个软件用来编辑镜像和取出启动文件(XXX.WBT)
三、 目录及文件结构
保证硬盘上有足够的空间(假设将文件存放在默认的 EasyBoot 文件夹下 D:\EasyBoot\WINXP,全部三个版本的原始文件约占用空间为1.24 GB,生成的镜像文件约为520 MB 左右),建立的目录结构如下:
⑴、建立目录结构及文件位置
D:\EasyBoot\WINXP
D:\EasyBoot\WINXP\IMG
D:\EasyBoot\WINXP\IMG\WXPWPRO.WBT
D:\EasyBoot\WINXP\IMG\WXPHOME.WBT
D:\EasyBoot\WINXP\WPRO
D:\EasyBoot\WINXP\HOME
D:\EasyBoot\WINXP\WIN51
D:\EasyBoot\WINXP\WIN51IC
D:\EasyBoot\WINXP\WIN51IP
D:\EasyBoot\WINXP\BOOTFONT.BIN
D:\EasyBoot\WINXP\SYSTEM\WINXPWPRO
D:\EasyBoot\WINXP\SYSTEM\WINXPHOME
D:\EasyBoot\WINXP\WINXP.BIN -> (我取名为 WINXP.BIN,这个文件名任意取)
D:\EasyBoot\WINXP\LOADER.BIN
建好以上目录和文件放好后
⑵、复制文件
接着开始按放三个版的文件,其中,D:\EasyBoot\WINXP\ 是Windows XP 3合1光盘的根目录,
D:\EasyBoot\WINXP\SYSTEM\WINXPWPRO 用于存放 Windows XP 专业版文件。(光盘根目录下的全部文件)
D:\EasyBoot\WINXP\SYSTEM\WINXPHOME 用于存放 Windows XP 家庭版文件,(光盘根目录下的全部文件)
将 Windows XP 专业版光盘上的文件全部复制到 D:\EasyBoot\WINXP\SYSTEM\WINXPWPRO 目录。
将 Windows XP 家庭版光盘上的文件全部复制到 D:\EasyBoot\WINXP\SYSTEM\WINXPHOME 目录。
必须确保复制了全部文件和子目录,包括具有系统和隐藏属性的。
复制完毕后,清除 D:\EasyBoot\WINXP\SYSTEM\下全部文件和子目录的系统、隐藏和只读属性。
将 D:\EasyBoot\WINXP\SYSTEM\WINXPWPRO 目录下的 WIN51、WIN51IP 复制到 D:\EasyBoot\WINXP\目录下,
将 D:\EasyBoot\WINXP\SYSTEM\WINXPHOME 目录下的 WIN51IC 复制到 D:\EasyBoot\WINXP\目录下,
要点:D:\EasyBoot\WINXP\目录下面必须有文件,WIN51、WIN51IC、WIN51IP 这是我们欺骗安装程序的标志,这张光盘是Windows XP 的原始安装盘。
⑶、配置软盘组安装程序文件
首先到微软网站下载二个版本启动盘文件,
简体中文专业版:winxp_cn_pro_bf.exe
XP 简体中文专业版启动盘下载地址:http://www.microsoft.com/downloads/release.asp?releaseid=33494
简体中文家庭版:winxp_cn_hom_bf.exe
XP 简体中文家庭版启动盘下载地址:http://www.microsoft.com/downloads/release.asp?releaseid=33493
D:\EasyBoot\WINXP\WPRO
D:\EasyBoot\WINXP\HOME
以上这二个目录是二个版本的软盘组目录:
注意要点:我把这二个版本取名为大家通用的“WPRO”、“HOME”的软盘组,而软盘组目录名称是固定在这二个版本的启动文件里(比如我取名为 W2KWPRO.WBT、W2KHOME.WBT 这二个文件,而这二个文件里面只能改动的字符长度是 4 个字符长度。
把刚在下载来的 Windows XP 6 张镜像文件 img 。用 WinImg 将各个版本 6 个 img 文件分别释放到各自的软盘组目录下:
将专业版的 6 个 img 文件全部释放到 D:\EasyBoot\WINXP\WPRO\下。
将家庭版的 6 个 img 文件全部释放到 D:\EasyBoot\WINXP\HOME\下。
要点:这是我们模拟软盘安装的关键,一定要连带 system32 目录(里面有两个文件)一起释放。
⑷、取启动文件
用 WinISO 制作 WINXP 镜像文件 ISO ,然后打开刚做好的镜像文件,取出启动文件,保存为 XXX.WBT(那一个版本都行)。
⑸、修改文件
用 VC++(或其它软件)打开刚保存的 XXX.WBT 文件,找到这个字符串 SETUPLDR.BINBOOTFIX.BINI386 将其后面的 4 个字符(I386)修改为相应的 “WPRO”、“HOME”、字符,分别把它保存为这二个启动文件 WXPWPRO.WBT、WXPHOME.WBT ,这二个文件取名可以任意取。要存放在其他目录下,并相应修改目录结构。此外,还必须在后面的配置中进行相应修改。这二个文件修改好后,再找出软盘组里面的二个文件分别是setupldr.bin 和 txtsetup.sif,这二个文件修改如下:
用 VC++(或其它软件)二进制打开 D:\EasyBoot\WINXP\WPRO\setupldr.bin,找到“I386”,把“i386”替换为“WPRO”,共4处;
用 VC++(或其它软件)二进制打开 D:\EasyBoot\WINXP\HOME\setupldr.bin,找到“I386”,把“i386”替换为“HOME”,共4处;
存盘退出。
用 VC++(或其它软件)打开 D:\EasyBoot\WINXP\WPRO\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\SYSTEM\WINXPWPRO\"”;
用 VC++(或其它软件)打开 D:\EasyBoot\WINXP\HOME\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\SYSTEM\WINXPHOME\"”;
存盘退出。
要点:这两个文件中的路径告诉安装程序从何处复制文件,必须与目录结构相匹配。
⑹、跳过输入产品序列号
查找各个版本i386目录,找到文件setupp.ini,用记事本打开,将其中的“Pid=xxxxx000”修改为为“Pid=xxxxx270”,存盘退出。这一步不是必须的,只是图个方便。
⑺、 制作ISO文件
配好和修改好以上文件与目录结构,就可以制作 ISO 镜像了,用 EasyBoot 制作是非常简单,只要点击“制作ISO”按扭,弹出一个对话框,在对话框里点优化光盘文件和其它设置,(优化光盘设置是必须点上的)然后点击“制作”,制作就开始了。
⑻、测试ISO文件
用 VMware 加载 WINXP.ISO 文件,设置第1启动设备为光驱。从光盘启动后,系统首先显示信息用 EasyBoot 制作好的菜单,按相应的键后,就可启动相应安装版本。此后的安装与原版光盘的安装一致。需要逐个安装,以测试各个版本的完整性。
⑼、烧录光盘
ISO镜像文件测试无误后,即可用自己熟悉的烧录软件软件(例如Nero)将其烧录到光盘。这样,一张可启动的Windows XP 2合1光盘就制作完成了。
四、特色
优点:用 EasyBoot 制作出来的与流行的 Windows 2000/XP N 合 1 光盘相比,上述方法制作的光盘目录结构更简洁,没有一个多余的文件,用 EasyBoot 制作出漂亮的彩色菜单(当然diskem1x也不能,但EasyBoot 制作能)。
================================================================================
注意:要用 EasyBoot V3.22 的外挂工具制作 ISO 否则在安装过程中会失败。
--------------------------------------------------------------------------------
页:
[1]