返回资讯中心
外部精选
软件工程
#开发者实时流

开发者将 NetBSD 11 桌面系统装进树莓派 4

来源标题:NetBSD 11 desktop on a Raspberry Pi 4

一位开发者成功在 Raspberry Pi 4 上安装并运行 NetBSD 11 桌面系统,并公开了操作指南。步骤包括下载 NetBSD arm64 镜像、使用 Balena Etcher 写入 microSD 卡,以及准备树莓派 UEFI 固件。作者称 NetBSD 是目前唯一不含 AI 生成内容的主流开源系统。

Hacker News 最新jaypatelani2026/11/8 · 今天14 分钟阅读

以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。

既然我把这个 capsule 迁到了 VPS 上,我的 Raspberry Pi 就空出来可以另作他用了。据我所知,NetBSD 是唯一一个还在开发、却没有掺入 AI 垃圾的开源操作系统。至少目前是这样?我决定试一试,把它装到 Pi 上。能有多难呢?结果发现,还真不算难。我把自己操作的步骤写成了一份小指南,也许能帮到别人。

我假设你是在 Linux 上为 Pi 准备 SD 卡。 https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-11/latest/evbarm-aarch64/binary/gzimg/arm64.img.gz 获取最新的 Raspberry Pi UEFI 固件: 获取 Balena 的 Etcher(如果你还没有的话): https://etcher.balena.io/#download-etcher 把 microSD 卡插入你的笔记本电脑(我用的是便宜的 USB 读卡器)。 解压 Etcher,进入其目录并以普通用户身份启动它: $ cd balenaEtcher-linux-x64/ $ ./balena-etcher 在界面中选择“Flash from file”,找到之前解压出来的 NetBSD arm64 镜像。目标设备选择 SD 卡(务必确认真的是 SD 卡!我这里是 /dev/sda)。刷入镜像(需要提供 sudo 权限)。 为固件文件创建一个目录,把压缩包移进去并解压: $ mkdir rpi_efi_firmware $ mv RPi4_UEFI_Firmware_v1.53.zip rpi_efi_firmware/ $ cd rpi_efi_firmware/ $ unzip RPi4_UEFI_Firmware_v1.53.zip 为 NetBSD 启动分区创建一个挂载目录: 把 SD 卡的第一个分区挂载到那里: $ sudo mount -t vfat /dev/sda1 /mnt/netbsd-boot 把 rpi_efi_firmware 目录下的所有文件复制到 /mnt/netbsd-boot(全部覆盖)。 这一步是必需的,这样 UEFI BIOS 才能真正引导 SD 卡上的 NetBSD 分区。 现在可以把 SD 卡插入 Raspberry Pi 了。 开机,按 ESC 进入设置菜单。 进入 Boot Maintenance Manager -> Delete Boot Option。把所有网络启动选项都标记为 X(SD 卡除外)。Commit Changes。在 Boot Order 列表中,用 + 键把 SD 卡移到最顶部。按 F10 保存。选择 continue 退出设置。 NetBSD 现在应该能启动了。启动后首先会调整根文件系统的大小。 完成后,你可以用 “root” 登录。 建议立刻创建一个用户,不过稍后再做也可以: $ useradd -m -G wheel youruser $ passwd youruser 如果输入 'ifconfig',我们看不到无线网卡。这是个问题。 不过在 dmesg 里,我们可以看到内核识别到了它、找到了它的驱动,但无法自动配置: $ dmesg | grep -iE 'bwfm|firmware|sdio|wifi' bwfm0: Found firmware file: brcmfmac43455-sdio.bin bwfm0: autoconfiguration error: NVRAM file not available $ cd /libdata/firmware/if_bwfm $ ln -s brcmfmac43455-sdio.raspberrypi,4-model-b.txt "brcmfmac43455-sdio.Raspberry Pi 4 Model B.txt" 现在 ifconfig 会显示 bwfm0 设备了。我们来配置 WiFi 接入点。 在文件末尾添加以下内容(注意大小写敏感): network={ ssid="Your_WiFi_SSID_name" psk="YourWifiPassword" scan_ssid=0 如果一切顺利,重启后(或重启 wpa supplicant 后)你应该就能上网了。 ifconfig 应该会显示 'status: active' 以及通过 dhcp 获取到的 IP 地址。 从这一步开始,如何配置系统、安装什么,就完全由你决定了。 以下是我做过的一些事,让它更好用一些。 NetBSD 有 pkg_src,这是一种从源码安装和构建软件包的方式,还有 pkgin,这是一种安装预编译二进制包的方式。 编辑 ~/.profile,去掉设置 PKG_PATH 的 export 行前面的注释,这样我们就能安装二进制包了。 然后用 'exit' 注销并重新登录。 我们来添加 pkgin,即二进制包管理器: $ pkgin update $ pkgin install nano fastfetch sudo $ visudo 找到写着 'Uncomment to allow members of group wheel to execute any command' 的那一行,去掉下一行开头的 #。 (在 Vi 中,按 ESC 退出交互模式,然后在要删除的字符上按 x 即可删除该字符。) 配置 X11 并启用图形登录管理器: $ cp /etc/X11/xinit/xinitrc ~/.xinitrc $ chmod u+w ~/.xinitrc $ ln -s .xinitrc ~/.xsession $ echo 'xdm=YES' >> /etc/rc.conf $ service xdm start https://www.netbsd.org/docs/guide/en/chap-x.html 用你的普通用户登录(输入用户名后按回车进入密码输入框)。 这会启动 NetBSD 内置的 ctwm 窗口管理器。它非常简单,但很高效。 不过,如果你想让它真正好用,我推荐 NsCDE,这是一个 CDE 风格的现代桌面环境,基于 fvwm: 首先,安装它需要的所有依赖: sudo pkgin install fvwm3 ksh93-1.0.10nb3 py313-yaml py313-qt5 py313-psutil coreutils xclip sudo pkgin install gtail ImageMagick xdotool dunst stalonetray gsed xterm git xscreensaver-615nb2 mkdir -p "$HOME/bin" ln -s /usr/pkg/bin/python3.13 "$HOME/bin/python3" export PATH="$HOME/bin:/usr/pkg/bin:/usr/pkg/sbin:/usr/X11R7/bin:$PATH" python3 --version 创建这个文件夹,因为 NsCDE 可能会用到它: cd /tmp git clone https://github.com/NsCDE/NsCDE.git cd NsCDE ./configure 检查是否有警告。如果还有缺失的软件包,就安装它。用以下命令查找可用的软件包: 现在编辑你用户主目录下的 .xinitrc,把 exec 行改成: 重启并用你的用户登录。NsCDE 的首次启动设置应该会启动,你可以在那里配置主题以及与 GTK 和 QT 的集成。 祝你玩这个新的小众操作系统玩得开心。 在 Raspberry Pi 上运行 NsCDE 的 NetBSD 11 [图片,png,250Kb]

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →