利用 dqib 在普通 X86 笔记本电脑上运行 RISC-V Debian GNU/Linux

上个月看到 Fuchsia 即将支持 RISC-V 架构,对这一架构产生了浓厚兴趣,后来看到论坛这篇文章:

顺着这条帖子找了一些资料,总想试着体验一下,然而我目前只有 X86 笔记本电脑和 ARM 服务器,并没有 RISC-V 的设备,几番折腾和摸索,终于利用 dqib 在我的 Debian/Ubuntu 电脑上跑起了 RISC-V Linux (Debian),来操作系统论坛分享给大家也可以一起尝试下。实现在 X86 笔记本电脑上运行 RISC-V Debian 主要是利用了dqib 项目,dqib 是 Debian Quick Image Baker 的简称,提供一系列预编译好的 Debian 镜像,使用 QEMU 运行,感谢 gio 大神,才让我们的折腾变得简单和轻松。

宿主系统

我的测试笔记本电脑安装的是 Debian, 不过我相信 Ubuntu 和 deb 系的 Linux 应该都可以

安装必要的依赖软件

sudo apt install opensbi u-boot-qemu qemu-system-misc

下载 dqib

wget https://gitlab.com/api/v4/projects/giomasce%2Fdqib/jobs/artifacts/master/download?job=convert_riscv64-virt

运行 dqib RISC-V

将下载的 RISC-V Debian 镜像文件解压缩,并进入该目录,使用下列命令来运行:

 qemu-system-riscv64 -machine virt -cpu rv64 -m 3G \
-device virtio-blk-device,drive=hd -drive file=image.qcow2,if=none,id=hd \
-device virtio-net-device,netdev=net -netdev user,id=net,hostfwd=tcp::2222-:22 \
-bios /usr/lib/riscv64-linux-gnu/opensbi/generic/fw_jump.elf \
-kernel /usr/lib/u-boot/qemu-riscv64_smode/uboot.elf -object rng-random,filename=/dev/urandom,id=rng \
-device virtio-rng-device,rng=rng -nographic \
-append "root=LABEL=rootfs console=ttyS0"

登陆使用

root 用户的默认密码为 root,下面是我的运行界面:
image

我的笔记本配置较低,CPU 跑满,见笑了
image

参考资料:

Debian Quick Image Baker Project

感谢分享,我按照你的教程,也成功跑起来了。

谢谢分享,我也跑起来了,就是很卡, apt upgrade 花了 20 多分钟,安装一个 git 花了 10 几分钟,感觉屏幕分辨率设置不对,执行命令时候屏幕会乱,继续摸索下:

image
image

这是我到目前最喜欢的一个帖子,认真地折腾了几个小时。把内存从楼主的 3G 改成了 4G

qemu-system-riscv64 -machine virt -cpu rv64 -m 3G \
-device virtio-blk-device,drive=hd -drive file=image.qcow2,if=none,id=hd \
-device virtio-net-device,netdev=net -netdev user,id=net,hostfwd=tcp::2222-:22 \
-bios /usr/lib/riscv64-linux-gnu/opensbi/generic/fw_jump.elf \
-kernel /usr/lib/u-boot/qemu-riscv64_smode/uboot.elf -object rng-random,filename=/dev/urandom,id=rng \
-device virtio-rng-device,rng=rng -nographic \
-append "root=LABEL=rootfs console=ttyS0"

image