在 ROCK64 板上的 NetBSD

这是之前帖子在 ROCK64 板上安装 FreeBSD的续集。简言之,作者有机会复活了办公室里积满灰尘的 4 台单板计算机,决定在其中一台上安装 FreeBSD 并成功了。这次将展示在第二块 ROCK64 板上安装 NetBSD 的方法和原因。

为 FreeBSD 板添加连接性

之前帖子中的过程很有趣且学到很多,但使用 USB 转串口适配器连接板子,虽完成安装没问题,但想有更舒适的连接方式。作者记得有几年前买的 USB wifi dongle,基于 Atheros AR9271 芯片组,当时知道 Linux 支持但不确定 FreeBSD。搜索后发现 FreeBSD 维基页面关于Atheros 无线驱动支持),AR9271 芯片组及其相关 USB HAL 支持得还不好。于是作者想到如果该设备 FreeBSD 不支持,为何不用 NetBSD 试试。

NetBSD 来救援

像安装 FreeBSD 一样,作者去 Rock64 软件发布页面的NetBSD 部分,发现针对自己板子的 NetBSD 镜像可下载使用。几分钟后将镜像放在电脑上并准备写入 SD 卡。

$ sudo dd if=NetBSD-10-aarch64--rock64.img of=/dev/sda bs=1M status=progress

与 FreeBSD 不同,NetBSD 支持 eMMC 启动,很直接。接下来连接 wifi dongle 看系统是否识别。

$ dmesg

[     2.755663] : Atheros AR9271
[     2.755663] athn0: rev 1 (1T1R), ROM rev 15, address 00:c0:ca:--:--:--

设备被识别且驱动加载,ifconfig命令显示新接口athn0。计划是将 NetBSD 系统配置为网关并通过以太网电缆连接到 FreeBSD 板。

  • 配置 wifi 接口:NetBSD 有专门网页解释如何配置 wifi 接口,作者按说明配置athn0接口,创建/etc/wpa_supplicant.conf文件设置 wifi 网络配置,然后修改/etc/rc.conf文件启用wpa_supplicant服务并设置默认路由,最后设置/etc/resolv.conf文件中的nameserver
  • 配置以太网接口:按之前步骤配置awge0接口,在/etc/sysctl.conf文件中启用 ip 转发,创建/etc/npf.conf文件设置防火墙规则以实现 NAT 并转发数据包,最后在/etc/rc.conf文件中启用npf服务。

配置 FreeBSD 板

最后配置 FreeBSD 板连接到 NetBSD 网关,配置dwc0接口为静态 IP 地址并设置默认路由器为 NetBSD 网关 IP 地址。

$ cat /etc/rc.conf

...
ifconfig_dwc0="inet 10.0.0.2 netmask 255.255.255.0"
defaultrouter="10.0.0.1"

成功了,能通过 NetBSD 网关在端口2222通过 ssh 连接到 FreeBSD 板。作者在将 NetBSD 系统配置为网关并连接到 FreeBSD 板的过程中很开心,学到很多关于 NetBSD 系统的知识,对文档的简洁性和清晰性印象深刻,未来肯定会在其他项目中使用 NetBSD。

阅读 20
0 条评论