Qemu 启动 OpenEuler24.03(riscv64)

本文使用 WSL2 Ubuntu22.04虚拟机

一、安装 Qemu

QEMU 从 7.2.0 版本之后移除了 slirp 子模块,会影响用户模式的网络功能,需要提前加上依赖包和配置选项。 编译时增加 --enable-slirp

官网:https://github.com/qemu/qemu

shell 复制代码
## 1. 进入源码文件夹
cd qemu # 这里的qemu替换成自己的qemu源码文件夹
## 2. 配置目标平台并指定安装路径
## 可选配置 --target-list=riscv64-softmmu,riscv64-linux-user --prefix=/opt/qemu
./configure --enable-slirp
## 3. 编译安装
make -j8             # 编译
sudo make install    # 安装到 --prefix 指定的路径下

二、下载 OpenEuler 相关文件

https://www.openeuler.org/zh/download/?version=openEuler 24.03 LTS

选择

  • 架构:riscv64
  • 场景:云计算

把该页的 RISCV_VIRT_CODE.fd、fw_dynamic_oe_2403_penglai.bin 等所有的文件下载下来放到同一个文件夹中,进入该文件夹

shell 复制代码
使用默认参数启动 Qemu 虚拟机,进入一个终端
bash ./start_vm.sh

自下载页面获取的启动脚本

  • start_vm.sh: 默认脚本,需要手动安装桌面。
  • start_vm_penglai.sh:蓬莱 TEE 功能支持脚本。
    脚本可变参数:
  • ssh_port:本地 SSH 转发端口,默认为 12055。
  • vcpu:QEMU 执行时线程数量,默认为 8 核心,可随需要调整。
  • memory:QEMU 执行时分配内容数量,默认为 8GiB,可随需要调整。
  • fw: 为启动固件 payload。
  • drive:虚拟磁盘路径,可随需要调整。
  • bios(可选): 启动固件,可以用来装载使能了 penglai TEE 的固件。

用户名:root

密码:openEuler12#$

SSH 登录

start_vm.sh 中默认使用 12055 端口

使用 SSH 登录的相关信息如下:

  • IP:127.0.0.1
  • 端口:12055
  • 用户名:root
  • 密码:openEuler12#$

以 MobaXterm 为例:

  1. 新建一个 SSH session
  2. 在 Remote host 中填入 127.0.0.1,在 Specify username 中指定 root,Port 设置为 12055
  3. 然后通过该 session 即可连接到 Qemu 启动的虚拟机中(前提:已经使用 Qemu 启动 VM)
  4. 通过 MobaXterm 创建 ssh 连接,也可以互相传输文件等
相关推荐
熊文豪10 小时前
在 openEuler 上部署 Kafka 集群:深度性能评测与优化指南
分布式·kafka·openeuler
ejinxian1 天前
Linux 虚拟化技术 KVM/ESXI/Docker
linux·运维·docker·qemu·openvz
skywalk81638 天前
windows装wsl ubuntu24.04 ,里面装qemu ,然后装mac os (windows也可以直接qemu安装macos)(未实践)
windows·ubuntu·macos·qemu
曾凡宇先生17 天前
openEuler安装jdk,nginx,redis
linux·开发语言·数据库·openeuler
漫谈网络1 个月前
KVM创建的虚拟机,虚拟机的网卡是如何生成的
运维·服务器·网络·qemu·虚拟化·kvm
趴着喝可乐2 个月前
openEuler2403安装部署Kafka
kafka·openeuler
趴着喝可乐2 个月前
openEuler2403安装部署Kafbat
kafka·openeuler·kafbat
趴着喝可乐2 个月前
openEuler2403安装部署PostgreSQL17
postgresql·openeuler
Zenexus3 个月前
VSCODE+GDB+QEMU调试内核
linux·vscode·qemu·gdb
爱做梦Di猪4 个月前
openEuler 22.03 LTS Rootless Docker 安装指南
docker·eureka·openeuler