mkisofs     命令制作光盘镜像

作用:建立 ISO 9660 映像文件。

 

语  法: mkisofs [-adDfhJlLNrRTvz][-print-size][-quiet][-A < 应用程序 ID>][-abstract < 摘要文件 >][-b < 开机映像文件 >][-biblio ][-c < 开机文件名称 >][-C < 盘区编号,磁区编号 >][-copyright < 版权信息文件 >][-hide < 目录或文件名 >][-hide-joliet < 文件或目录名 >][-log-file < 记录文件 >][-m < 目录或文件名 >][-M < 开机映像文件 >][-o < 映像文件 >][-p < 数据处理人 >][-P < 光盘发行人 >][-sysid < 系统 ID >][-V < 光盘 ID >][-volset < 卷册集 ID>][-volset-size < 光盘总数 >][-volset-seqno < 卷册序号 >][-x < 目录 >][ 目录或文件 ]
  补充说明: mkisofs 可将指定的目录与文件做成 ISO 9660 格式的映像文件,以供刻录光盘。
  参  数:
   -a --all mkisofs 通常不处理备份文件。使用此参数可以把备份文件加到映像文件中。
   -A< 应用程序 ID> -appid< 应用程序 ID> 指定光盘的应用程序 ID
   -abstract< 摘要文件 > 指定摘要文件的文件名。
   -b< 开机映像文件 > -eltorito-boot< 开机映像文件 > 指定在制作可开机光盘时所需的开机映像文件。
   -biblio 指定 ISBN 文件的文件名, ISBN 文件位于光盘根目录下,记录光盘的 ISBN
   -c< 开机文件名称 > 制作可开机光盘时, mkisofs 会将开机映像文件中的全 -eltorito-catalog< 开机文件名称 > 全部内容作成一个文件。
   -C< 盘区编号,盘区编号 > 将许多节区合成一个映像文件时,必须使用此参数。
   -copyright< 版权信息文件 > 指定版权信息文件的文件名。
   -d -omit-period 省略文件后的句号。
   -D -disable-deep-relocation ISO 9660 最多只能处理 8 层的目录,超过 8 层的部分, RRIP 会自动将它们设置成 ISO 9660 兼容的格式。使用 -D 参数可关闭此功能。
   -f -follow-links 忽略符号连接。
   -h 显示帮助。
   -hide< 目录或文件名 > 使指定的目录或文件在 ISO 9660 Rock RidgeExtensions 的系统中隐藏。
   -hide-joliet< 目录或文件名 > 使指定的目录或文件在 Joliet 系统中隐藏。
   -J -joliet 使用 Joliet 格式的目录与文件名称。
   -l -full-iso9660-filenames 使用 ISO 9660 32 字符长度的文件名。
   -L -allow-leading-dots 允许文件名的第一个字符为句号。
   -log-file< 记录文件 > 在执行过程中若有错误信息,预设会显示在屏幕上。
   -m< 目录或文件名 > -exclude< 目录或文件名 > 指定的目录或文件名将不会房入映像文件中。
   -M< 映像文件 > -prev-session< 映像文件 > 与指定的映像文件合并。
   -N -omit-version-number 省略 ISO 9660 文件中的版本信息。
   -o< 映像文件 > -output< 映像文件 > 指定映像文件的名称。
   -p< 数据处理人 > -preparer< 数据处理人 > 记录光盘的数据处理人。
   -print-size 显示预估的文件系统大小。
   -quiet 执行时不显示任何信息。
   -r -rational-rock 使用 Rock Ridge Extensions ,并开放全部文件的读取权限。
   -R -rock 使用 Rock Ridge Extensions
   -sysid< 系统 ID> 指定光盘的系统 ID
   -T -translation-table 建立文件名的转换表,适用于不支持 Rock Ridge Extensions 的系统上。
   -v -verbose 执行时显示详细的信息。
   -V< 光盘 ID

 

###############################################
#################################################

 

  mkisofs(8) 程序作为 sysutils/cdrtools port 的一部分, 将生成 ISO 9660 文件系统,其中包含 UNIX? 命名空间中的文件名。最简单的用法是:
# mkisofs -o p_w_picpathfile.iso /path/to/tree
  这个命令将创建一个包含 ISO9660 文件系统的 p_w_picpathfile.iso 文件,它是目录树 /path/to/tree 的一个副本。 在处理过程中,它将文件名称映射为标准的 ISO9660 文件系统的文件名,将排除那些不典型的 ISO 文件系统的文件。
  有很多选项能够用来克服那些限制。特别的, -R 选项能够启用 Rock Ridge 扩展一般的 UNIX 系统, -J 选项能启用用于 Microsoft 系统的 Joliet 扩展, -hfs 选项能用来创建用于 Mac OS? 系统的 HFS 文件系统。
    RockRidge 格式是 ISO9660 格式的延伸,支持文件名字母的大小写、符号字符、长文件名以及超过 8 层的目录结构。 RockRidge 使 CD-ROM 能兼容 Unix 的文件系统,因此它在 Unix 系统上已经被广泛地使用。
    对于那些即将要在 FreeBSD 系统中使用 CD 的人来说, -U 选项能用来消除所有文件名的限制。当使用 -R 选项时,它会产生一个 文件系统映像,它与您从那儿启动 FreeBSD 树是一样的,虽然它在许多方面也违反了 ISO 9660 的标准。
  最后一个常用的选项是 -b 它用来指定启动映像的位置,用以生成 El Torito 启动 CD 这个选项使用一个参数, 用以指定将写入 CD 的目录的根。默认情况下, mkisofs(8) 会以常说的 “软盘模拟” 方式来创建 ISO 因此它希望引导映像文件的尺寸恰好是 1200 1440 2880 KB 某些引导加载器, 例如 FreeBSD 发行版磁盘, 并不使用模拟模式;这种情况下, 需要使用 -no-emul-boot 选项。 因此, 如果 /tmp/myboot 是一个包含了启动映像文件 /tmp/myboot/boot/cdboot 的可引导的 FreeBSD 系统,您就可以使用下面的命令生成 ISO 9660 文件系统映像 /tmp/bootable.iso
# mkisofs -R -no-emul-boot -b boot/cdboot -o /tmp/bootable.iso /tmp/myboot
  完成这些工作之后, 如果您的内核中配置了 md ,就可以用下列命令来挂接文件系统了:
# mdconfig -a -t vnode -f /tmp/bootable.iso -u 0
# mount -t cd9660 /dev/md0 /mnt
  可以发现 /mnt /tmp/myboot 是一样的。
  还可以使用 mkisofs(8) 的其它选项来调整它的行为。特别是修改 ISO 9660 的划分格式,创建 Joliet HFS 格式的磁盘。查看 mkisofs(8) 联机手册得到更多的帮助。

 

 

 

   :
1) 建立映像文件 ( 把目录 a 下的内容做成 iso 文件 )
$mkisofs  -r -o a.iso    a/
2) 建立映像文件 ( 把目录 a 下的内容做成 iso 文件,并指定不把文件 b.txt 放到 iso )
$mkisofs -m b.txt -r -o a.iso    a/
3) 建立映像文件 ( 把目录 a 下的内容做成 iso 文件,并指定不把目录 b 放到 iso )
$mkisofs -x b -r -o a.iso    a/
4) 建立映像文件 ( 把目录 a 下的内容做成 iso 文件,并指定不把目录 b 放到 iso , 并指定数据处理人为 Jack Chen)
$mkisofs -p "Jack Chen" -x b -r -o a.iso    a/
5) 建立映像文件 ( 把目录 a 下的内容做成 iso 文件 , 并指定共 4 张光盘,此为第 2 )
$mkisofs -volset-size 4  -volset-seqno 2  -r -o a.iso    a/
6) 预计建立映像文件的容量大小
$mkisofs  -print-size  -r a/