ViSionFive 2-JH7110开发板子和刻录Fedora-riscv镜像

一 、VisionFive 2开发板和Fedora镜像刻录

微雪电子资料:
VisonFive 2开发板
显示器资料

  • 主板:StarFive VisionFive 2
  • CPU:StarFive JH7110(RISC-V 64位)
  • 存储:microSD卡(推荐≥32GB)
  • 读卡器:USB SD卡读卡器
  • 目标系统:Fedora 44 RISC-V Desktop/Workstation
  • 主机PC:Fedora 44 x86_64(我当前的系统)
    image

我想下载一个带桌面的Fedora系统,Fedora RISC-V 官方目前主要提供 Server 镜像,VisionFive 2 官方支持主要也是 Server/通用镜像;Desktop 镜像一般来自 Fedora RISC-V 社区构建(例如Fedora-V Force 等)。

image
image

下面按照 Fedora 主机刻录流程。

由于VisionFive金属外壳+散热风扇需要108多元,这里我选择的外壳是14元的VisionFive 2开发板亚克力外壳(携带散热小风扇).
image


1、下载 Fedora 44 RISC-V 镜像:

打开Fedora-V Force社区官网,找到相关开发板子的镜像;
image
结果是502,下载不下来.

于是我换成RISC-V Test Matrix

wget https://mirror.iscas.ac.cn/fedora-riscv/dl/StarFive/visionfive2/images/latest/fedora-disk-multi-desktops_starfive_vf2-sda.raw.gz

如果下载不成功,使用以下命令尝试

cd /home/rock/Downloads

URL='https://mirror.nju.edu.cn/fedora-riscv/dl/StarFive/visionfive2/images/latest/fedora-disk-
multi-desktops_starfive_vf2-sda.raw.gz'
FILE='fedora-disk-multi-desktops_starfive_vf2-sda.raw.gz'

curl -L --fail --continue-at - \
  --retry 20 --retry-delay 10 --retry-all-errors \
  --connect-timeout 30 --speed-limit 1024 --speed-time 120 \
  --progress-bar \
  -o "$FILE" "$URL"

2、给SD卡刻录fedora-riscv镜像

下载并解压镜像后,使用 dd 将镜像刷入微 SD 卡中。
image

(1) 使用gzip解压镜像

gzip -d fedora-disk-multi-desktops_starfive_vf2-sda.raw.gz

image

(2) 使用dd向sd卡中刻录fedora镜像

  • 识别SD卡设备:进入/dev目录,把microSD卡插入SD卡读卡器,然后插抽主机电脑(Feodra 44),
    image
    image
  • 经过对比也确定是插入SD卡阅读器(SD)之后发现多出来bsg,sda,sda1sg0四个,经过查看得知
    • /dev/sda:代表整个磁盘(块设备)。
    • /dev/sda1:代表该磁盘上的第一个分区(块设备)。
    • /dev/sg0:代表通用 SCSI 设备(字符设备)。通常不用于直接写入原始磁盘镜像。
    • /dev/bsg/...:是 SCSI 通用接口的另一个版本(每个设备一个目录)。通常不用于 dd。
  • 结论:正确的目标是 /dev/sda,因为我们要将整个原始镜像写入磁盘的开头(引导记录和所有分区),而不是单个分区, 使用下面命令刻录。
sudo dd if=fedora-disk-multi-desktops_starfive_vf2-sda.raw of=/dev/sda bs=4M status=progress conv=fsync

image

(3) 使用以下lsblk命令检查SD卡刻录的feodra-riscv镜像
image

(4) 然后将刻录好fedora-riscv镜像的SD卡移除主机.

3、给VisionFive 2主板安装feodra-riscv系统

(1) 按照下列风扇示意指示图,将散热风扇接在开发板子,一定要接,否则运行时间久了很容易烧坏CPU,别问我是怎么知道的.
image

(2) 然后把刚才烧录有feodra-riscv镜像的SD卡插入开发板相应的地方.
image

(3) 把开发板的电供起来;
sivionfive5

(4) 给显示器把电供起来;
sivionfive

(5) 使用HDMI线把开发板和显示器连接起来.
sivionfive4

(6) 然后就可以进入feodra-riscv系统了:
sivionfive2_dev1
sivionfive2_dev12

(7) 登录系统。
默认用户名: root 默认密码: riscv
image


二 、替代方案和改进

1、如果实在下载不了带界面的,可以选择Fedora官方的服务器版本:

https://dl.fedoraproject.org/pub/alt/risc-v/release/42/Server/riscv64/images/

但是这个没有带桌面,只有命令行.

image

镜像类型 镜像文件 适用板卡 / 环境
通用镜像 Fedora-Server-Host-Generic-42.20250414-8635a3a5bfcd.riscv64.raw.xz 适用于 VisionFive 2、Milk-V Mars、Orange Pi RV 等常见 RISC-V 板,以及 QEMU 等虚拟环境。
通用镜像 Fedora-Server-Host-Generic-42.20250715-2251ba41cdd3.riscv64.raw.xz 同上
通用镜像 Fedora-Server-Host-Generic-42.20250911-2251ba41cdd3.riscv64.raw.xz 同上
Megrez 专用镜像 Fedora-Server-Host-Megrez-42.20250414-8635a3a5bfcd.riscv64.raw.xz Milk-V Megrez (SG2380)
Megrez 专用镜像 Fedora-Server-Host-Megrez-42.20250715-2251ba41cdd3.riscv64.raw.xz Milk-V Megrez (SG2380)
Megrez 专用镜像 Fedora-Server-Host-Megrez-42.20250911-2251ba41cdd3.riscv64.raw.xz Milk-V Megrez (SG2380)
PremierP550 专用镜像 Fedora-Server-Host-PremierP550-42.20250414-8635a3a5bfcd.riscv64.raw.xz SiFive HiFive Premier P550
PremierP550 专用镜像 Fedora-Server-Host-PremierP550-42.20250715-2251ba41cdd3.riscv64.raw.xz SiFive HiFive Premier P550
PremierP550 专用镜像 Fedora-Server-Host-PremierP550-42.20250911-2251ba41cdd3.riscv64.raw.xz SiFive HiFive Premier P550
SpacemiT 专用镜像 Fedora-Server-Host-SpacemiT-42.20250715-2251ba41cdd3.riscv64.raw.xz 香蕉派 BPI-F3 或 SpacemiT MUSEPi
SpacemiT 专用镜像 Fedora-Server-Host-SpacemiT-42.20250911-2251ba41cdd3.riscv64.raw.xz 香蕉派 BPI-F3 或 SpacemiT MUSEPi

文件名组成部分注解
Fedora-Server-Host-Generic-42.20250414-8635a3a5bfcd.riscv64.raw.xz 为例:

组成部分 含义
Fedora-Server 发行版名称和变体,Server 表示服务器版(无图形界面),对应的还有 Workstation(工作站版)、Cloud(云版)等。
Host 表示该镜像是用于物理机(实体硬件) 的镜像,而非虚拟机(VM)或容器(Container)专用镜像。
Generic 通用版,不针对特定硬件型号。内置通用 U-Boot,启动时自动识别板载 SoC 并加载对应设备树,因此适用于多款 RISC-V 板。专用镜像此处会替换为板卡代号,如 MegrezPremierP550SpacemiT
42 Fedora 版本号,这里表示 Fedora 42。
20250414 构建日期,格式为 YYYYMMDD,此处表示 2025年4月14日。日期越新,包含的安全补丁和软件包更新越多。
8635a3a5bfcd 构建 ID(Commit ID 前缀),用于唯一标识该次构建对应的源代码版本。当同一日有多次构建时,用于区分不同版本。
riscv64 CPU 架构,表示该镜像是为 64 位 RISC-V 处理器编译的。
raw 磁盘镜像格式,表示这是一个原始块设备镜像(可直接用 dd 写入 SD 卡或 eMMC)。与之相对的还有 qcow2(QEMU 虚拟机专用格式)。
xz 压缩格式,使用 xz 算法压缩以减小文件体积。写入前需用 xzcatunxz 解压。
.sha256 (校验文件) 与镜像同名但后缀为 .sha256 的文件,内容为镜像文件的 SHA-256 哈希值,用于验证下载的镜像是否完整无损。

2、上面使用dd刻录工具的,但是这个操作不当很容易自己主机电脑上的某个设备革了, 有个叫balenaEtcher的开源图形画刻录工具,自动识别镜像和插在主机电脑上的SD卡,操作起来比较方便.
(1).打开balenaEtcher官网,下载相应的电脑的版本.
image

(2).我使用的是fedora, 所以选择红帽的rpm版本就行;如果你是Debian(Ubuntu)可以下载deb版本.
image

(3).点击下载相应版本之后,它会跳转到相关的下载网站,我这里是etcher的Github

(4).点击[Relsases]处的标签V2.1.6 Latest, 就会跳转到相关的安装包界面.
image

(5).点击适合我fedora版本的balena-etcher-2.1.6-1.x86_64.rpm, 然后点击下载就会在下载到本地的~/Downloads目录下.
image
image

(6).根据etcher的GitHub教程, 使用以下命令就可以安装rpm文件包.

 sudo yum localinstall balena-etcher-***.x86_64.rpm

image
但是这里使用该命令下载不成功,于是我采取了另一种安装方式,如下:

sudo dnf install ./balena-etcher-2.1.6-1.x86_64.rpm -y

image
image

如何卸载呢?
趁现在保留着当初安装用的 .rpm 文件,可以用以下命令查出它在系统中注册的准确包名

rpm -qp --queryformat '%{NAME}\n' ./balena-etcher-2.1.6-1.x86_64.rpm
balena-etcher

找到准确的包名后,执行卸载命令:

sudo dnf remove balena-etcher

image
如果你已经删除了原 .rpm 文件,可以用 rpm 或 dnf 搜索已安装的列表

rpm -qa | grep balena(推荐)
# 或者
dnf list installed | grep balena(没找到)

image

(7). 打开[开始菜单]->[Utilities]->[balenaEtcher], 主机电脑上插入带有microSD卡的USB SD卡读卡器,
image

posted @ 2026-07-25 00:53  游翔  阅读(20)  评论(0)    收藏  举报