ArchLinux @ Milk-V Duo S 测试报告
支持状态
BASIC
最后更新
2026-09-06
Arch Linux Milk-V Duo S 测试报告
测试环境
操作系统信息
- 系统版本:archriscv-2026-08-27
需要自行构建。
Note: 此镜像为社区开发者提供,非官方镜像。
硬件信息
- Milk-V Duo S
- USB 电源适配器一个
- USB-A to C 或 USB C to C 线缆一条
- TF 卡一张
- USB to UART 调试器一个(如:CH340, CH341, FT2232 等)
- 杜邦线三根
构建步骤
构建 Buildroot
请参阅 milkv-duo/duo-buildroot-sdk。
在第一次构建完成目标 milkv-duos-sd 后,修改 build/boards/cv181x/cv1813h_milkv_duos_sd/linux/cvitek_cv1813h_milkv_duos_sd_defconfig
增加下列行。
CONFIG_CGROUPS=y
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_PIDS=y
CONFIG_CGROUP_DEVICE=y
CONFIG_CPUSETS=y
CONFIG_PROC_PID_CPUSET=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_PAGE_COUNTER=y
CONFIG_MEMCG=y
CONFIG_CGROUP_SCHED=y
CONFIG_NAMESPACES=y
CONFIG_OVERLAY_FS=y
CONFIG_AUTOFS4_FS=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EPOLL=y
CONFIG_IPV6=y
CONFIG_FANOTIFY=y
然后再构建一次,获得镜像 out/milkv-duos-sd-<your-build-timex>.img。
更新根文件系统
为了防止权限问题,请考虑切换到根用户操作。
下载根文件系统
先从 Arch Linux RISC-V 下载根文件系统。
wget https://archriscv.felixc.at/images/archriscv-2026-08-27.tar.zst
挂载镜像
sudo losetup -f
输出 /dev/loop0,下文请根据情况修改。缺少环设备需要新建。
挂载镜像到环设备上。
losetup -P loop0 out/milkv-duos-sd_<your-build-timex>.img
挂载分区到目录。
mkdir /mnt/duo-rootfs
cd /mnt/duo-rootfs
mount /dev/loop0p3 /mnt/duo-rootfs
删除原来的一切。
rm -rf ./*
将根文件系统解压到此处。
tar -xvf archriscv-2026-08-27.tar.zst -C .
下载包
为了有网络用,下载一些包到目录中以便安装。
cd /mnt/duo-rootfs/root
wget https://mirror.iscas.ac.cn/archriscv/repo/core/nano-9.2-1-riscv64.pkg.tar.zst
wget https://mirror.iscas.ac.cn/archriscv/repo/extra/dhcpcd-10.5.2-1-riscv64.pkg.tar.zst
卸载镜像
umount /dev/loop0p3
losetup -d /dev/loop0
安装步骤
使用 dd 刷写镜像到 microSD 卡
sudo dd if=out/milkv-duos-sd_<your-build-timex>.img of=/dev/sdX bs=1M status=progress
登录系统
通过串口登录系统。
- 默认账号:root
- 默认密码:archriscv
配置网络
使用 UART 连接到开发板。
pacman -U ./dhcpcd-10.5.2-1-riscv64.pkg.tar.zst
pacman -U ./nano-9.2-1-riscv64.pkg.tar.zst
启动网络。
ip link set end0 up
systemctl start dhcpcd.service
systemctl enable dhcpcd.service
手动配置网络
如果需要手工配置网络,参考如下代码。
ip link set end0 up
ip addr add 172.16.0.188/12 broadcast 172.31.255.255 dev end0 #172.16.0.188/12为本机IP,172.31.255.255为广播地址。
ip route add default via 172.16.0.1 #默认网关
echo -e "nameserver 172.16.0.1" >> /etc/resolv.conf #DNS服务器
也许需要重新启动。
预期结果
系统正常启动,能够通过串口登录。
实际结果
系统正常启动,成功通过串口登录。
启动信息
Starting Flush Journal to Persistent Storage...
[ 10.376192] systemd-journald[126]: Received client request to flush runtime journal.
[ OK ] Finished Flush Journal to Persistent Storage.
[ OK ] Started User Database Manager.
[ OK ] Finished Create Static Device Nodes in /dev gracefully.
Starting Create System Users...
[ OK ] Finished Create System Users.
Starting Journal Log Access Socket...
[ 12.485748] random: crng init done
Starting Create Static Device Nodes in /dev...
[ OK ] Finished Load/Save OS Random Seed.
[ OK ] Listening on Journal Log Access Socket.
[ OK ] Finished Coldplug All udev Devices.
[ OK ] Finished Create Static Device Nodes in /dev.
[ OK ] Reached target Preparation for Local File Systems.
[ OK ] Reached target Local File Systems.
[ OK ] Listening on Boot Loader Control Service Socket.
[ OK ] Listening on Disk Image Download Service Socket.
[ OK ] Listening on System Extension Image Management.
Starting Create System Files and Directories...
Starting Rule-based Manager for Device Events and Files...
Starting Load JSON user/group Records from Credentials...
[ OK ] Finished Load JSON user/group Records from Credentials.
[ OK ] Finished Create System Files and Directories.
[ OK ] Started Rule-based Manager for Device Events and Files.
Starting Rebuild Dynamic Linker Cache...
Starting Rebuild Journal Catalog...
Starting Record System Boot/Shutdown in UTMP...
[ OK ] Finished Record System Boot/Shutdown in UTMP.
[ OK ] Finished Rebuild Journal Catalog.
[ 16.740896] bm-dwmac 4070000.ethernet end0: renamed from eth0
[ OK ] Found device /dev/ttyS0.
[ OK ] Finished Rebuild Dynamic Linker Cache.
[ OK ] Reached target Sound Card.
[ OK ] Reached target Hardware activated USB gadget.
[ OK ] Listening on Load/Save RF Kill Switch Status /dev/rfkill Watch.
Starting Update is Completed...
[ OK ] Finished Update is Completed.
[ OK ] Reached target System Initialization.
[ OK ] Started Refresh existing PGP keys of archlinux-keyring regularly.
[ OK ] Started Daily verification of password and group files.
[ OK ] Started Daily Cleanup of Temporary Directories.
[ OK ] Reached target Timer Units.
[ OK ] Listening on D-Bus System Message Bus Socket.
[ OK ] Listening on GnuPG network certifi…ent daemon for /etc/pacman.d/gnupg.
[ OK ] Listening on GnuPG cryptographic a… browsers) for /etc/pacman.d/gnupg.
[ OK ] Listening on GnuPG cryptographic a…estricted) for /etc/pacman.d/gnupg.
[ OK ] Listening on GnuPG cryptographic a…emulation) for /etc/pacman.d/gnupg.
[ OK ] Listening on GnuPG cryptographic a…rase cache for /etc/pacman.d/gnupg.
[ OK ] Listening on GnuPG public key mana…nt service for /etc/pacman.d/gnupg.
[ OK ] Listening on User Login Management Varlink Socket.
[ OK ] Listening on Virtual Machine and C…tainer Registration Service Socket.
[ OK ] Reached target Socket Units.
Starting D-Bus System Message Bus...
[ OK ] Started D-Bus System Message Bus.
[ OK ] Reached target Basic System.
Starting User Login Management...
Starting Permit User Sessions...
[ OK ] Finished Permit User Sessions.
[ OK ] Started Serial Getty on ttyS0.
[ OK ] Reached target Login Prompts.
[ 21.045114] ext4 filesystem being remounted at /run/systemd/mount-rootfs/var/lib/systemd/linger supports timestamps until 2038 (0x7fffffff)
[ 21.058678] ext4 filesystem being remounted at /run/systemd/mount-rootfs/var/tmp supports timestamps until 2038 (0x7fffffff)
[ 21.074402] ext4 filesystem being remounted at /run/systemd/mount-rootfs/etc supports timestamps until 2038 (0x7fffffff)
[ 21.098246] ext4 filesystem being remounted at /run/systemd/mount-rootfs/etc supports timestamps until 2038 (0x7fffffff)
[ 21.215954] ext4 filesystem being remounted at /run/systemd/mount-rootfs/var/lib/systemd/linger supports timestamps until 2038 (0x7fffffff)
[ 21.235324] ext4 filesystem being remounted at /run/systemd/mount-rootfs/var/tmp supports timestamps until 2038 (0x7fffffff)
[ OK ] Started User Login Management.
[ OK ] Reached target Multi-User System.
[ OK ] Reached target Graphical Interface.
Arch Linux 5.10.4-tag- (ttyS0)
archlinux login: root
Password:
[root@archlinux ~]#
屏幕录像:
测试判定标准
测试成功:实际结果与预期结果相符。
测试失败:实际结果与预期结果不符。
测试结论
测试成功。
来源: 支持矩阵