使用genisoimage硬盘启动仿真

时间:2014-08-22 22:20:55

标签: assembly iso hard-drive cd

有谁知道如何在genisoimage中使ISO模拟硬盘或软盘。请不要告诉我有关Windows软件的信息,因为我使用的是Debian GNU / Linux 7.6

我试过了:

genisoimage -hard-disk-boot -boot-load-size 4 -eltorito-boot boot.bin -o boot.iso iso/

但我收到错误:

-genisoimage: boot.bin has no partitions.

如何让它发挥作用?

1 个答案:

答案 0 :(得分:0)

显然,您的boot.bin没有分区表。您需要在引导块的末尾添加MBR partition table。您可能只需要链接的维基百科文章所称的经典通用MBR"。

如果您还没有,请下载并阅读“El Torito” Bootable CD-ROM Format Specification。它就分区表说明了这一点:

  

当模拟设备是硬盘时,BIOS应使用适合的几何体   分区表位于Load LBA扇区中。硬盘映像可能只有   分区表中的1个分区,它必须是第一个条目。

请注意,它还表明硬盘仿真不是用于引导操作系统的。它建议使用软盘模拟。

关于El Torito文档的一个警告,它使用没有任何前缀或后缀的十六进制数字(例如。" 0x200"或" 200h")。所以当它谈到" 200字节扇区"它意味着512字节扇区。