FreeBSD 14 发布后的技术问题解析
FreeBSD 14 发布后的技术问题
升级前必须执行 freebsd-update fetch install
从 FreeBSD 13 升级到 FreeBSD 14 时,我们遇到了一个特殊情况:FreeBSD 13 中的一个文件与 FreeBSD 14 中的一个目录同名。这在我编写 freebsd-update 时从未预料到,原始代码无法处理这种情况(我原本假设可以在删除旧内容之前创建所有新内容)。这个问题已通过Errata通知修复,但如果您尚未安装此修复程序,使用 freebsd-update 升级到 14.0 将会失败。
FreeBSD Update 错误报告 14.0-RELEASE 即将终止支持
FreeBSD Update 元数据包含发布版本的终止支持日期;但在为 FreeBSD 14.0-RELEASE 组装 FreeBSD Update 组件时插入了错误的值。请忽略此警告;该值将在第一个安全公告或 Errata 通知发布时被修正。
合并 master.passwd 时需谨慎
FreeBSD 14 中 root 用户的默认 shell 从 csh 更改为 sh。当您升级到 FreeBSD 14 时,freebsd-update 将提示您合并对/etc/master.passwd 的更改。不要直接采用新的 root 密码行,因为它没有密码。请保留现有行并更改 shell(如果您更喜欢继续使用 csh,则无需更改)。
缺少 PINE64 SD 卡镜像
我们通常构建的 SD 卡镜像之一是为 PINE64 准备的。构建失败了——我们不确定具体原因,但 offset.inc 文件不知何故充满了 NUL 字节——但我们决定在没有该镜像的情况下继续发布。PINE64-LTS 镜像确实构建成功了。
EC2 AMI 无法处理二进制用户数据
为了支持 IMDSv2,EC2 启动脚本从使用 fetch(1)从 EC2 实例元数据服务获取数据改为使用新编写的 aws-ec2-imdsv2-get 工具。不幸的是,该工具中的一个错误导致它假设来自 IMDS 的数据始终是 UTF-8 字符串——这通常是正确的,但如果您提供二进制用户数据就会出错。特别是,如果您生成一个 tarball 并将其传递给 configinit,将会出现问题。
如果您觉得我在 FreeBSD 上的工作有帮助,请考虑赞助我的工作。在某种程度上,时间和金钱是可互换的,维护 FreeBSD/EC2 平台和我新承担的发布工程职责加起来占用了大量时间。更多精彩内容 请关注我的个人公众号 公众号(办公 AI 智能小助手)对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)
公众号二维码

公众号二维码

评论