首页  编辑  

手把手教你如何制作多重引导光盘

Tags: /计算机文档/光盘制作和多重引导/   Date Created:

手把手教你如何制作多重引导光盘

1:在硬盘建立一个目录,作为光盘的根目录

2:复制所有文件到这个目录

3:制作启动软盘镜像,可以用WinImage或者HD-COPY,或者任意的软盘完全镜像工具制作即可,VMWare的虚拟软盘的也可以用哦

4:编辑DISKEMU.CMD文件,参考包中的DISKEMU.CMD

5:运行CD.BAT,需要两个参数,第一个参数是你在硬盘建立的那么个目录的名字,第二个参数是生成的CDROM镜像的文件名。

6:必须的文件列表(请不要修改以下几个文件的文件名!):

  Loader.BIN:多重引导的引导文件,将会被写入CD-ROM的引导扇区

  DISKEMU.BIN:Loader.BIN启动之后,加载的程序文件

  DISKEM1X.BIN:Loader.BIN载入的另外一个程序文件

  DISKEMU.CMD:菜单脚本文件,用户可以自己编辑修改

7:DISKEMU.CMD的格式和支持命令请参考Diskem1x.zip中的文档和DEMO

注意:生成的文件会自动对文件进行优化,相同的文件会自动优化掉。

---------------------------------------

[ 这个贴子最后由 Climbing 2004/03/13 09:02pm 4 次编辑 ]

Climbing 注:本帖的第一个版本写成于 2002 7 22 日(我在无忧启动论坛注册的时间是 2002 7 17 日),现在已经是 2003 10 6 日了,这一年多来光盘启动技术及相关软件的发展只能用突飞猛进来形容,相形之下这篇帖子也显得有些过时了,帖子中介绍的很多东西也发生了变化。虽然如此,本帖作为学习光盘启动的入门教程还是没有问题的,希望有志于学习光盘启动的新手们从这篇帖子开始你的光盘启动学习之旅。为了方便大家学习和参考,我于 2003 10 6 日又对本帖进行了整理,修正了一些链接,并增加了一些相关软件的下载链接,但由于工程浩大,没有对帖子的内容进行大的改动,否则还不如发一篇新帖呢。

修改后检查了一下,发现下面帖子中很多链接(包括链接到本论坛的一些链接)都已经不能使用了,不过这些文章大部分都还是有的,具体链接请参考本论坛"光盘启动区"的置顶帖:本站所有的教学文章及下载资源清单列表。

2003 10 6 日于无忧启动论坛)

================================================================

原帖内容如下(重新修改于 2003 10 6 日,就算是第 2 版吧):

================================================================

研究了一周的时间,对于刻录各种启动光盘的原理与方法终有小成,在此期间,我主要参考了 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 [other path\filename ...] 指定用来放入 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 ------------------------------------------------------------------------------

print Bootable CD main menu                                http://www.nu2.nu/diskemu

print ------------------------------------------------------------------------------

print F1=Help

print

print

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

print                     a)   Boot floppy [A:]

print                     c)   Boot first harddisk [C:]

print                     q)   Quit to command prompt

print                     r)   Reboot

print

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

print Here you can type help for your customers

print

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 [options] 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  

夫大块载我以形,劳我以生,佚我以老,息我以死。故善吾生者,乃所以善吾死也。

=========================================================================

lusers (即失败者)的定义(详细的说明请访问置顶帖"提问的智慧"):他们不愿思考,或者在发问前不去完成他们应该做的事。这种人只会谋杀时间 -- 他们只愿索取,从不付出,无端消耗我们的时间,而我们本可以把时间用在更有趣的问题或者更值得回答的人身上。

Bart's way to create bootable CD-Roms (for Windows-Dos).mht (147.4KB)
CD-BOOT.zip (328.6KB)
Multi-Load.zip (68.9KB)
cdimage.zip (39.9KB)
pebuilder3025fr.zip (2.4MB)
xxcopy.bat (4.8KB)