FreeBSD 15.1-RELEASE 升级说明
摘要
本说明详述将现有安装升级到 FreeBSD 15.1-RELEASE 的过程。
引言
本文档说明将现有 14.4-RELEASE 或 15.0-RELEASE 安装升级到 15.1-RELEASE 的过程。运行更旧版本的系统必须先增量升级到其中之一,才能执行本次升级。
二进制升级的过程取决于操作系统的管理方式。要确定管理方式,请运行以下命令:
pkg which /usr/bin/uname若显示 /usr/bin/uname was not installed by a package,请参阅下文的 通过发行版升级。
若显示包名(如 FreeBSD-runtime-15.0),请参阅下文的 通过 pkgbase 升级。
若通过源码升级,请参阅 FreeBSD Handbook 的“从源码更新 FreeBSD”章节。
通过发行版升级
通过发行版部署的系统使用 freebsd-update(8) 升级。运行 14.4-RELEASE 或 15.0-RELEASE 的系统可按以下步骤升级:
应用所有待处理补丁
升级前,始终先获取并应用当前系统的所有待处理补丁:
freebsd-update fetch freebsd-update install升级内核
获取并安装新内核:
freebsd-update upgrade -r 15.1-RELEASE freebsd-update install此过程中 freebsd-update(8) 可能会请求协助合并配置文件。
重启进入新内核
安装新用户态前,先重启进入新内核:
shutdown -r +10min "Rebooting for a kernel upgrade"升级用户态
重启后,再次运行 freebsd-update(8) 安装新用户态组件:
freebsd-update install因系统库变更,freebsd-update(8) 可能会提示重新编译或重新安装所有第三方软件。请按提示操作。
提示:若从 14.4-RELEASE 升级且无法重新安装所有第三方软件,可安装 misc/compat14x 软件包。
通过 pkgbase 升级
通过 pkgbase 部署的系统使用 pkg(8) 升级。运行 15.0-RELEASE 的系统可按以下步骤升级:
为当前安装创建快照
若从 ZFS 启动,对正常运行的系统创建以当前日期命名的递归快照:
引导加载程序会提供菜单,用于在需要回滚升级时从该快照启动。
升级已安装系统
升级到新版本前,确保已安装系统为最新:
升级基本系统
升级后,查看 pkg(8) 打印的任何消息。部分软件包可能需要额外的配置步骤,如运行
service <name> setup。请按提示操作。检查失败的配置更新
若 pkg(8) 无法合并配置文件更新,会将新配置安装为
.pkgnew文件。使用以下命令检查这些文件:若存在,与已部署版本比较(如
diff /etc/rc.conf /etc/rc.conf.pkgnew),合并必要变更。
升级 UEFI 引导加载程序
识别 ESP
执行以下命令,识别引导加载程序所在的 EFI 系统分区(ESP):
输出应类似如下:
活动的引导加载程序条目以加号(
+)字符开头。注意引导加载程序的位置,本例中为nda0p1上的EFI/freebsd/loader.efi,但不同系统会有所差异。挂载 ESP
若 ESP 尚未挂载到 /boot/efi,挂载
efibootmgr输出中列出的分区:安装引导加载程序
在 AMD64 系统上,执行以下命令升级配置位置和默认位置中的引导加载程序:
注意,部分安装可能大小写相反(如
EFI/BOOT/BOOTX64.EFI),或可能没有freebsd/loader.efi。在 AArch64 系统上,执行以下命令:
其他架构相应有所不同;必要时请参阅 loader.efi(8)。
完成
完成升级到 FreeBSD 15.1-RELEASE 后重启:
升级 BIOS 引导加载程序
对于通过 BIOS 或 UEFI CSM 启动并使用 GPT 分区方案的系统,除非 ZFS 根池升级(不建议),否则引导加载程序升级是可选的。仅当 freebsd-boot 分区至少为 180K 时才能升级;512K 现已成为标准。
识别 freebsd-boot 分区
执行以下命令,识别
freebsd-boot设备名和分区索引:输出应类似如下:
注意
freebsd-boot分区的名称(ada)和索引(1)。升级引导加载程序
在 BIOS 上使用 ZFS 时,运行以下命令升级引导代码:
其中
1为freebsd-boot分区的索引。若从存储阵列启动,对池中所有磁盘重复此步骤。
在 BIOS 上使用 UFS 时,执行以下命令:
完成
完成升级到 FreeBSD 15.1-RELEASE 后重启:
最后更新于