我的系统是基于x86的内核和基于ramfs的根文件系统.我已经使用基于cpio存档的ramfs(它将使用boot =/dev/ram0作为RAM设备),并且我遇到了一些init问题.整个目的是将ramfs优化到最小,以适应一个非常小的系统.我试图在init中调试问题.我使用以下命令在Ubuntu 12.10(Quantal Quetzal)中启动QEMU:
qemu-system-x86_64 -kernel linux-3.9.2/arch/x86/boot/bzImage -serial stdio -append "root=/dev/ram0 console=tty1"
Run Code Online (Sandbox Code Playgroud)
正如预期的那样,系统进入了OOPS.
我想查看日志以调查崩溃的原因,但我无法使用Shift密钥和Page Up/ 在QEMU控制台中导航Page Down.所以我尝试使用curses命令将输出重定向到主机终端:
qemu-system-x86_64 -kernel linux-3.9.2/arch/x86/boot/bzImage -serial stdio -append "root=/dev/ram0 console=tty1" -curses
Run Code Online (Sandbox Code Playgroud)
但在这里,我无法导航并找到问题所在.
PS如果我的系统启动正常(使用正确的rootfs),那么我可以导航并查看消息.
如何将消息重定向到终端或文件?
vin*_*yal 14
添加以下命令
console=ttyAMA0 console=ttyS0
qemu-system-x86_64 -kernel linux-3.9.2/arch/x86/boot/bzImage -serial stdio -append "root=/dev/ram0 console=ttyAMA0 console=ttyS0"
Run Code Online (Sandbox Code Playgroud)
现在所有dmesg日志都将重定向到您的控制台.
还有一件事:我从上面的命令中观察到,你的初始RAM磁盘在哪里?即 - -initrd (initrdimage)
要引导系统,您需要两个映像,1)zImage或bZimage(在x86的情况下)2)rootfs -root文件系统
在您的情况下,缺少的组件是rootfs.
| 归档时间: |
|
| 查看次数: |
20482 次 |
| 最近记录: |