18.2 树莓派安装 FreeBSD
FreeBSD 对不同体系结构的支持按等级划分,目前 ARM 属于 一级架构 备份,但在软件支持上仍略逊于 AMD64,某些软件无法通过 FreeBSD ports 以源码形式进行构建。
准备前提
我们需要准备的硬件和软件分别如下:
一块树莓派板子;
一段网线;
一枚存储卡;
一根 CH340 USB 转串口线,或一台 1080P 显示器(二选一即可);
一台普通路由器,有没有互联网 不重要;
如果使用 Windows 10 或 Windows 11 操作系统
XShell(软件)
WinSCP(软件)
基本安装思路
访问 https://www.freebsd.org 备份 下载适用于树莓派的 FreeBSD 镜像;
下载后解压缩;
接入 USB 以太网卡并接入网线、接入 HDMI 显示器等等;
将存储卡插入树莓派;
通电等待约五分钟;
查看路由器后台获取 IP
SSH 连接。
注意: 刻录完需要挂载 FAT 分区 替换里面的所有文件,否则会启动花屏,替换的文件路径为:
https://github.com/FreeBSD-Ask/FreeBSD-rpi4-firmware
FreeBSD ZFS 与树莓派(基于树莓派 4,但 5 亦通用)
如果固件不是最新的,先使用树莓派官方系统(Raspberry Pi)更新下固件!
注意
FreeBSD 默认提供的 IMG 镜像使用 UFS 文件系统。想使用 ZFS 的用户可在存储卡上刻录好 img 正常启动。再插入 U 盘,加载 ZFS 模块。运行命令
bsdinstall正常安装(安装位置选择 U 盘)即可。如果想在存储卡上使用 ZFS,反过来用 U 盘进行安装即可。
安装前说明:
mmcsd0 为存储卡,da0 为 U 盘。
以下操作将创建一个使用 ZFS 的树莓派 FreeBSD 系统到 U 盘。
使用正常镜像写入存储卡,启动后再插上空白 U 盘,U 盘保持 FAT32,MBR 分区表即可。
查看系统磁盘分区表信息:
一定要先加载 zfs 模块,否则分区会错误 sysctl: unknown oid 'vfs.zfs.min_auto_ashift' 之类的。
启动 FreeBSD 安装程序以开始安装 FreeBSD:
安装后复制固件,但请注意不要覆盖 EFI 分区中的原有文件。
安装后,再显示系统磁盘分区表信息:
后续我在存储卡上又安装了一遍。
树莓派 5
树莓派 5 8G
FreeBSD 15.0-CURRENT
外接 RTL 8156B 网卡
启动盘为 256G NVMe SSD
UEFI:rpi5-uefi v0.3 备份
警告
本文不适用于 D0 款以及 16G 内存款。具体可参考 https://rpicn.bsdcn.org。若使用新款固件,你可能需要降级之才能使用本文。
经过测试,树莓派 5 8G 使用 UEFI 备份 和 FreeBSD 15.0(测试镜像 FreeBSD-15.0-CURRENT-arm64-aarch64-20240628-14fee5324a9b-270986-memstick.img.xz)可以从存储卡、USB 设备或 m2 扩展板(微雪的 PCIe_TO_M.2_HAT+ 备份)的 m2 NVMe SSD 启动,后者亦兼容 PCIe 3.0 速度。
但是网卡等没驱动(可使用 USB 网卡,具体型号参考第一章相关)。风扇由固件控制,所以默认会一直转,不会停。HDMI 正常。USB 2/3 均正常。经过测试 KDE5 可以正常输出到 HDMI 显示器上。
树莓派 5 与 HAT+
目前市面上出售的树莓派 5 扩展板,请确认其是否符合 HAT+ 标准。如果不符合,通常它只能通过 PCIe FPC 获取电源。但为了符合相关规范,扩展板电力需求应为 5V 2A,即 10W。
树莓派 5 提供的并非标准 PCIe 接口,而是自设计的 FPC 接口,因此需要使用转接器才能将 PCIe 设备连接到树莓派 5。
根据树莓派 5 的排线规范,该接口最多只能提供 5V 1A,即最多 5W 的电力。故,树莓派的 HAT+ 规范要求还应该从 GPIO 接口获取电源。
树莓派 5 8G 编译安装世界和内核
示例采用:FreeBSD 15.0-CURRENT 备份,且均使用默认参数。
显示当前 Git 仓库 freebsd-src 的提交哈希值:
编译世界(用户空间)约用时 6 小时。
编译内核约用时 26 分钟。
故障排除与未竟事宜
newfs_msdos /dev/gpt/efiboot0:operation not permitted
该问题主要出现在使用 ZFS 存储卡安装系统到 U 盘时,目前尚无解决方案,只能使用另一块采用 UFS 文件系统的 U 盘启动盘来安装 U 盘系统。
可能用到的命令:gpart destroy -F da2 摧毁这一步错误创建的文件系统,以防止系统不识别。
参考文献
附录:使用串口线
建议外接显示器或使用 CH340 USB 串口线,以防系统卡住时无法判断状态。
如使用 USB 串口线,请务必购买采用 CH340 芯片的型号,否则可能出现卡住、无输出、无法输入、驱动安装失败或与 Windows 10 不兼容等问题;
如果使用显示器,屏幕分辨率应不低于 1080P(1920 x 1080),屏幕尺寸不应小于 8 英寸——否则即使接入显示器,也仅能看到屏幕亮起,但无法清晰查看文字。
如果接入了显示器,请尽量确保树莓派和显示器同时通电。显示器可晚于树莓派通电,但不应太晚。
——附 CH340 USB 转串口官方驱动下载地址 https://www.wch.cn/download/CH341SER_EXE.html
附录:FreeBSD 与树莓派 4B 8G 启动失败问题(变通方案)
如果出现彩虹屏导致无法启动,请下载 FreeBSD 14 镜像写入存储卡后,将 FAT 分区内容替换即可(默认分区为隐藏分区,可使用 DiskGenius 激活并分配盘符)
https://github.com/FreeBSD-Ask/FreeBSD-rpi4-firmware
修改 config.txt 为以下内容:
最后更新于