我目前正在尝试学习更多有关仿真的知识,尤其是qemu。 我试图模仿我在网上找到的一些路由器(仅用于练习),并且该路由器将u-boot作为引导程序运行。 我想了解如何使用u-boot加载内核和文件系统。 基本上,主要问题是我想使用其原始内核和rootfs文件来仿真路由器,仅此而已。 我开始在u-boot git树(qemu-mips.rst)上阅读文档,在某些时候有以下说明:
6)生成Ide磁盘
dd of=ide bs=1k cout=100k if=/dev/zero
sfdisk -C 261 -d ide
partition table of ide
unit: sectors
ide1 : start= 63, size= 32067, Id=83
ide2 : start= 32130, size= 32130, Id=83
ide3 : start= 64260, size= 4128705, Id=83
ide4 : start= 0, size= 0, Id= 0
我的问题:
sfdisk没有-C参数。有没有人遇到过并有解决方案?
如何从编译的u-boot,内核和rootfs文件构建Flash映像以引导qemu机器?
谢谢!
答案 0 :(得分:0)
您可以使用以下命令来创建分区的磁盘映像:
dd of=ide bs=1k count=100k if=/dev/zero
# Create partion table
sudo sfdisk ide << EOF
label: dos
label-id: 0x6fe3a999
device: image
unit: sectors
image1 : start= 63, size= 32067, Id=83
image2 : start= 32130, size= 32130, Id=83
image3 : start= 64260, size= 4128705, Id=83
EOF
我已经发布了一个补丁来更正文档:https://lists.denx.de/pipermail/u-boot/2020-January/395133.html
您可以通过mbox链接从https://patchwork.ozlabs.org/patch/1216937下载它