Linux 内核无法获取选项";init";当指定;根“;在QEMU
我构建了Linux内核3.12.8和busybox-1.22.1,获得了bzImage并使用busybox实用程序创建了rootfs.img。然后我使用QEMU:Linux 内核无法获取选项";init";当指定;根“;在QEMU,linux,kernel,boot,Linux,Kernel,Boot,我构建了Linux内核3.12.8和busybox-1.22.1,获得了bzImage并使用busybox实用程序创建了rootfs.img。然后我使用QEMU: qemu-system-x86_64 -kernel arch/x86_64/boot/bzImage -hda ../rootfs.img -append "root=/dev/hda init=/bin/sh" 它说没有init,并告诉我将init传递给内核。 如果我写“init=/bin/sh root=/dev/hda”,它
qemu-system-x86_64 -kernel arch/x86_64/boot/bzImage -hda ../rootfs.img -append "root=/dev/hda init=/bin/sh"
它说没有init,并告诉我将init传递给内核。
如果我写“init=/bin/sh root=/dev/hda”,它会告诉我root是(null)并且无法装载。
我还尝试了-append“root=/dev/hda”-append“init=/bin/sh”;根也是(null)。
如何将init传递给内核?
谢谢。只要将init放入适当的文件夹,就不需要
init=
指令/sbin/init
是一个很好的地方,例如,已经有/sbin/init链接到busybox。您是否chmod+x/sbin/init
?当然。它是可执行的。我想你想要的是root=/dev/hda1
意味着地址是分区,而不是磁盘