![当源无法编译时,如何在没有 freebsd-update 的情况下更新 FreeBSD?](https://linux22.com/image/141896/%E5%BD%93%E6%BA%90%E6%97%A0%E6%B3%95%E7%BC%96%E8%AF%91%E6%97%B6%EF%BC%8C%E5%A6%82%E4%BD%95%E5%9C%A8%E6%B2%A1%E6%9C%89%20freebsd-update%20%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E6%9B%B4%E6%96%B0%20FreeBSD%EF%BC%9F.png)
我在 Raspberry Pi 3 上运行 FreeBSD。这台计算机永久安装在我无法轻松访问的服务器机房中。一旦 FreeBSD 12 发布,我想将计算机更新到新的系统版本。根据手册,有两种方法可以做到这一点:
- 使用freebsd 更新(8) 进行二进制更新
- 从源代码树编译并安装 FreeBSD
选项 (1) 不可用,因为 arm64 不是第 1 层平台。以前我选择了选项(2),但自从 LLVM 更新到 6.0 后,系统没有足够的 RAM 来编译 FreeBSD。有趣的是,添加更多交换并没有多大帮助。编译 LLVM 一直是编译过程中最烦人的部分,现在它完全破坏了选项 (2)。
我还有哪些其他选项来更新系统?之前我尝试过以下几种方法:
- 下载 FreeBSD 12 发行版的 tar 包并在运行的系统上解压它们。虽然这似乎有效,但确保没有配置被覆盖是一个巨大的痛苦,而且我无法确保没有旧文件保留。
- 在另一个系统上编译源代码树,将其移植并安装。由于我没有另一台 arm64 计算机,我尝试从 amd64 FreeBSD 进行交叉编译。移植此源代码树似乎不起作用,但我不记得问题是什么。
我怎么解决这个问题?