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 连接,也可以互相传输文件等
相关推荐
淼淼爱喝水1 天前
openEuler 系统下 Ansible 一键安装教程(保姆级)
运维·ansible·openeuler
PascalMing4 天前
openEuler 25.09 安装 .NET 10(二进制 tar.gz 包)教程
.net·openeuler
时空未宇6 天前
Hi3403开发板 + openEuler Embedded 部署 openClaw + 飞书
人工智能·openeuler·openclaw·hi3403
程序员一点7 天前
第24章:openEuler 内核与模块管理
arm开发·openeuler
程序员一点14 天前
第23章:备份与灾难恢复策略
linux·运维·网络·数据库·openeuler
江湖有缘18 天前
基于华为openEuler系统部署MicroBin粘贴板工具
华为·docker·华为云·openeuler
程序员一点19 天前
第17章:SELinux 与系统安全机制
安全·操作系统·系统安全·openeuler·selinux
程序员一点19 天前
第19章:openEuler 中的容器支持(Docker 与 iSulad)
运维·docker·容器·openeuler
程序员一点20 天前
第18章:Shell 脚本编程基础
shell·openeuler
江湖有缘20 天前
基于华为openEuler搭建Coolmonitor监控服务
linux·华为云·openeuler