1

我实际上是在尝试使用 Qemu 和 busybox 来模拟​​ linux 内核。到目前为止,我制作了这个内核映像: http ://depositfiles.com/files/l9x9veg09 并使用这些参数启动了 Qemu:qemu-system-x86_64 -m 256 -s -hda rootfs.img -kernel linux-2.6.34.12/arch /x86/boot/bzImage -append "root=/dev/sda \ init=/bin/sh" 但是一旦内核启动,我会收到一条消息:内核恐慌。没有找到初始化。尝试将 init= 选项传递给内核......我虽然在参数中添加“init=/bin/sh”可以解决问题,但它没有。我是这个领域的初学者。有人可以帮我弄这个吗?谢谢

4

2 回答 2

2

使用 Busybox 时,您希望将 -initrd initramfs 而不是 init=/bin/sh 传递给 qemu。试试这个

qemu-system-x86_64 -m 256 -s -hda rootfs.img -kernel linux-2.6.34.12/arch/x86/boot/bzImage -initrd initramfs -append "root=/dev/sda"
于 2012-07-20T03:46:44.557 回答
0

我终于通过使用静态链接的busybox的预构建版本(在网站上找到)使它工作。旧版本是动态链接的,将其编译为静态可执行文件真的很痛苦(glibc 似乎不再支持静态链接)。

于 2012-07-20T10:08:33.487 回答