我试图用qemu调试linux内核的引导序列,我正在运行的命令是:
qemu -serial stdio -kernel <path to kernel> -hda <path to rootfs> -append "root=/dev/sda terminal = ttyS0"在引导期间,所有内核消息都打印到QEMU窗口。只有在引导完成后,我才会将提示返回到运行QEMU的终端。
现在,我可以开始使用正在运行的内核终端,并在终端而不是QEMU窗口中看到输出。
如何将所有消息(包括引导消息)发送到我的终端而不是QEMU窗口(因为我不能在该窗口中向上滚动)?
发布于 2013-10-24 14:53:45
-serial stdio参数-nographic参数terminal = ttyS0更改为console=ttyS0。这应该能起作用。qemu -nographic -kernel ./bzImage -hda ./image.hda -append root=/dev/sda console=ttyS0
您可能需要检查我用于内核开发的脚本:https://github.com/arapov/wrap-qemukvm (它不是非常“生产”,但您可以在那里找到有用的qemu cli参数)
发布于 2013-10-24 17:26:57
请参考此Redirect Qemu console to a file or the host terminal?获取qemu和终端.use "console=ttyAMA0,115200 console=tty highres=off console=ttyS0"的日志。
发布于 2013-10-24 12:10:30
将Qemu输出重定向到终端可能会导致一些问题(我个人不喜欢)。您可以使用-noframe (这将创建新窗口,但不会使用任何窗口框架)或-curses等选项来体验终端上的qemu输出。
https://stackoverflow.com/questions/19565116
复制相似问题