【发布时间】:2021-10-05 01:38:17
【问题描述】:
我尝试使用 我自己的从源代码构建的 Linux 内核 为 ubuntu cloud image 并使用 QEMU 启动它。我的自定义内核在 ubuntu 镜像之外:
$ ls
kernel ubuntu-20.04-amd64.img ...
这是我使用的命令行:
sudo qemu-system-x86_64 \
-enable-kvm -cpu host -smp 2 -m 4096 -nographic \
-drive id=root,media=disk,file=ubuntu-20.04-amd64.img \
-kernel ./kernel/arch/x86/boot/bzImage \
-append "root=/dev/sda console=ttyS0" \
-device e1000,netdev=net0 -netdev user,id=net0,hostfwd=tcp:127.0.0.1:5555-:22
当我启动它时,我可以看到以下日志:
[ 0.875446] List of all partitions:
[ 0.875736] 0800 4194304 sda
[ 0.875736] driver: sd
[ 0.876259] 0801 4194303 sda1 00000000-01
[ 0.876259]
[ 0.876893] No filesystem could mount root, tried:
[ 0.876893] ext3
[ 0.877435] ext2
[ 0.877610] ext4
[ 0.877834]
[ 0.878149] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,0)
有什么建议吗?
【问题讨论】:
-
是否在没有内核选项的情况下启动?
-
是的,它在没有 -kernel 选项@wxz 的情况下启动
标签: linux linux-kernel qemu