Qemu - 替换 init 进程

Qemu - 替换 init 进程

我有几个关于 qemu 启动选项的问题

1)

当使用以下参数时

init=/bin/sh

它有效 - 但 init 进程真的被 sh 进程取代了吗?

Qemu-system-x86_64 -hda output/images/rootfs.ext2 -kernel output/images/bzImage --append "root=/dev/sda console=ttyS0 rw init=/bin/sh" -serial stdio > /home/john/kernel_debug_mess.txt

2)

如果我使用以下选项 - 系统无法启动

 init=/bin/ls

kernel-logg 中弹出以下错误:

 End kernel panic - not syncing: attempted to kill init! exitcode 0x000000000

使用 ls 时 - 如何解释崩溃?

答案1

  1. 是的。当您告诉内核使用/bin/shinit 时,它就会完全按照您的指示执行。

  2. /bin/ls运行然后退出,因此内核会发生恐慌,因为不再有 init 进程。 init 应该是一个持久的过程。

相关内容