如何在Linux中创建与QEMU一起使用的映像文件?
我一直在网上学习教程,并构建了一个512字节的引导加载程序,保存为如何在Linux中创建与QEMU一起使用的映像文件?,linux,operating-system,boot,Linux,Operating System,Boot,我一直在网上学习教程,并构建了一个512字节的引导加载程序,保存为boot.bin 我还编译了第二阶段引导加载程序,并将其保存为2ndstage.bin 我的引导加载程序是这样编写的,即第二阶段不必直接位于内存中第一阶段之后,因为它会按文件名进行搜索 在Linux中,如何将这两个bin文件组合成某种文件(可能是一个映像),以便与QEMU一起使用以运行我的引导加载程序?使用dd if=/dev/zero of=image.raw bs=1M count=50创建一个原始磁盘映像文件,这将使一个50
boot.bin
我还编译了第二阶段引导加载程序,并将其保存为2ndstage.bin
我的引导加载程序是这样编写的,即第二阶段不必直接位于内存中第一阶段之后,因为它会按文件名进行搜索
在Linux中,如何将这两个bin文件组合成某种文件(可能是一个映像),以便与QEMU一起使用以运行我的引导加载程序?使用
dd if=/dev/zero of=image.raw bs=1M count=50创建一个原始磁盘映像文件,这将使一个50兆字节的映像文件由零变为零
如果要在块设备而不是文件上操作,可以将mount image.raw作为块设备进行环回(读取losetup
手册页)
您可以使用常规fdisk或sfdisk实用程序对文件或环回设备进行分区。然后,您可以使用其他dd
选项(阅读手册页)或其他选项将bin文件放入磁盘映像中的正确位置
之后,如果创建了环回设备,请撤消环回设备,并使用image.raw文件作为磁盘设备启动qemu/qemu kvm会话。如果您正确执行引导加载程序,qemu bios将启动它