FreeBSD 11.2-RELEASE 发行说明(2018 年 6 月 28 日)

摘要

FreeBSD 11.2-RELEASE 的发行说明包含了 11.2-STABLE 开发分支中对 FreeBSD 基本系统所做的变更摘要。本文档列出了自上次发布以来发布的相关安全公告,以及对 FreeBSD 内核和用户空间的重大变更。同时还简要说明了升级的相关事项。

介绍

本文档包含 FreeBSD 11.2-RELEASE 的发行说明,介绍了 FreeBSD 最近新增、变更或移除的功能,并提供了从以前版本的 FreeBSD 升级的一些说明。

FreeBSD 11.2-RELEASE 是个 RELEASE 版本,可通过 https://www.FreeBSD.org/releases/arrow-up-right 或其镜像站点获取。有关获取此版本(或其他版本)的更多信息,请参阅 FreeBSD 手册arrow-up-right中的 “获取 FreeBSD”附录arrow-up-right

在安装 FreeBSD 之前,建议所有用户查阅发行勘误文档。该文档会更新在发行周期后期或发布后发现的“最新”信息。通常,它包括已知问题、安全公告和文档更正。可在 FreeBSD 官方网站找到有关 FreeBSD 11.2-RELEASE 的最新勘误文档。

本文档介绍了自 11.1-RELEASE 发布以来 FreeBSD 中对用户最为显著的新功能或变更。通常,本文描述的变更仅适用于 11.2-STABLE 分支,除非特别标注为已合并(MERGED)的功能。

典型的发行说明内容包括:在 11.1-RELEASE 发布后发布的最新安全公告、新的驱动程序或硬件支持、新的命令或选项、重大错误修复或捐赠的软件更新。此外,还可能列出主要 Port/包或发布工程实践的变更。显然,发行说明无法涉及 FreeBSD 在不同版本之间进行的每个变更;本文档主要关注安全公告、用户可见的变更和重要的体系结构改进。

从旧版 FreeBSD 升级

[amd64,i386] 使用 freebsd-update(8)arrow-up-right 工具支持 RELEASE 版本(以及各种安全分支快照)之间的二进制升级。二进制升级过程将更新未修改的用户空间工具和作为官方 FreeBSD 发行版一部分分发的未修改 GENERIC 内核。freebsd-update(8)arrow-up-right 工具要求待升级的主机具有互联网连接。

基于源码的升级(通过重新编译 FreeBSD 基本系统的源码进行升级)从早期版本开始得到支持,可按照 /usr/src/UPDATING 文件中的说明操作。

重要

在尝试升级 FreeBSD 之前,请务必备份 所有 数据和配置文件。

安全性与勘误

本节列出了自 FreeBSD 11.1-RELEASE 发布以来的各种安全公告和勘误通知。

安全公告

公告名称
日期
主题

2017 年 8 月 10 日

拒绝服务漏洞

2017 年 10 月 16 日

WPA2 协议漏洞

2017 年 11 月 15 日

通过 ptrace(PT_LWPINFO) 的内核数据泄漏

2017 年 11 月 15 日

信息泄漏

2017 年 11 月 29 日

多个漏洞

2017 年 12 月 9 日

多个漏洞

2018 年 3 月 7 日

修复 IPSEC 验证及释放后使用(use-after-free)漏洞

2018 年 3 月 7 日

多个漏洞

2018 年 3 月 14 日

推测执行漏洞 注意:此公告解决了 FreeBSD 11.x 在 amd64 CPU 上的最严重问题。预计将更新该公告以包括 i386 和其他 CPU 的信息。

2018 年 4 月 4 日

修复 vt(4)arrow-up-right 控制台内存泄漏

2018 年 4 月 4 日

修复拒绝服务漏洞

2018 年 5 月 8 日

错误处理 x86 调试异常

2018 年 6 月 21 日

修复懒惰 FPU 信息泄漏

勘误通知

勘误编号
日期
主题

2017 年 8 月 10 日

异步 I/O 导致 VNET 内核崩溃

2017 年 8 月 10 日

pf(4)arrow-up-right 管理线程导致内核崩溃

2017 年 11 月 2 日

更新时区数据库信息

2018 年 3 月 7 日

更新时区数据库信息

2018 年 3 月 7 日

基于栈的缓冲区溢出

2018 年 4 月 4 日

更新时区数据库信息

2018 年 4 月 4 日

多个小型内核内存泄漏

2018 年 5 月 8 日

多个小型内核内存泄漏

2018 年 5 月 8 日

更新时区数据库信息

用户空间

本节涉及用户空间应用程序、第三方软件和系统工具的变更与新增功能。

用户空间应用程序变更

ln(1)arrow-up-right 实用工具已更新,修正了 -F 参数的行为,现在在创建符号链接前会先取消链接已存在的目录。(r321092)arrow-up-right

crontab(1)arrow-up-right 实用工具新增 -f 参数,用于在非交互模式下使用 -r 强制移除 crontab(5)arrow-up-right(r321241)arrow-up-right

newsyslog(8)arrow-up-right 实用工具已更新,在轮转系统日志时支持符合 RFC5424 的消息格式。(r321262)arrow-up-right

sesutil(8)arrow-up-right 实用工具已更新,增加了 libxo(3)arrow-up-right 的输出支持。(r321287)arrow-up-right(由 Gandi.net 赞助)

diskinfo(8)arrow-up-right 实用工具新增了两个参数:-s 显示磁盘标识(通常为序列号),-p 显示存储控制器中磁盘的物理路径。这两个参数互斥,且不能与其他参数同时使用。(r321927)arrow-up-right

diskinfo(8)arrow-up-right 工具还更新了 -s 参数的功能,现在能显示设备型号。(r321929)arrow-up-right

top(1)arrow-up-right 工具已更新,现在在使用 -U 参数时允许对多个用户名进行过滤。(r322509)arrow-up-right

bsdgrep(1)arrow-up-right 工具新增硬链接 rgrep,当使用时相当于 grep -r(r322525)arrow-up-right

bsdgrep(1)arrow-up-right 工具已更新,解决了多种模式匹配行为的问题。(r322555)arrow-up-right

umount(8)arrow-up-right 工具新增 -N 参数,用于强制卸载 NFS 挂载的文件系统。(r322910)arrow-up-right

pw(8)arrow-up-right 工具已更新,现在在使用子命令 usermod 时,-G 参数能正确处理为空的次要组列表。(r322919)arrow-up-right

getconf(1)arrow-up-right 工具新增 -a 参数,可将所有系统或路径配置值的名称和值输出到 stdout(4)arrow-up-right,或通过 -a 参数指定的文件。(r324124)arrow-up-right(由 Chelsio Communications 赞助)

ps(1)arrow-up-right 工具已更新,支持在状态参数中反映实时和空闲优先级。(r324270)arrow-up-right

ps(1)arrow-up-right 工具已更新,能够显示进程是否在 capsicum(4)arrow-up-right 能力模式下运行,用 C 表示。(r324271)arrow-up-right

cpucontrol(8)arrow-up-right 工具新增了 -n 参数,使用该参数可以禁用默认的微代码更新搜索路径。(r324380)arrow-up-right

fsck_ffs(8)arrow-up-right 工具已更新,当仅更新超级块中的时间戳时,将不再报告文件系统已被修改。(r324674)arrow-up-right

diskinfo(8)arrow-up-right 工具已更新,可显示磁盘的旋转速率及磁盘是否支持 TRIM/UNMAP。(r325003)arrow-up-right (由 Spectra Logic 赞助)

rsh(1)arrow-up-right 工具新增了 -N 参数,使用该参数可在禁用套接字发送路径时避免关闭连接。(r325473)arrow-up-right

pfctl(8)arrow-up-right 工具已更新,route-to 现可正确处理具有多个 IP 地址的网络接口。(r326413)arrow-up-right

camcontrol(8)arrow-up-right 工具新增了 ZAC(Zoned-device ATA 命令集)信息,当使用 identify 子命令时可显示相关信息。(r326778)arrow-up-right (由 Spectra Logic 赞助)

pw(8)arrow-up-right 工具已修正对账户过期时间的处理。(r326848)arrow-up-right

mdmfs(8)arrow-up-right 工具已更新,支持 tmpfs(5)arrow-up-right(r327592)arrow-up-right

lint(1)arrow-up-right 工具默认不再被构建。新增 src.conf(5)arrow-up-right 选项 WITH_LINT,可启用该工具的构建和安装。(r327837)arrow-up-right

cpucontrol(8)arrow-up-right 工具新增了 -e 参数,用于在应用固件更新后重新评估报告的 CPU 特性。(r327871)arrow-up-right

注意

在系统中所有 CPU 完成微代码更新后才应使用 cpucontrol(8)arrow-up-right-e 参数,否则如果处理器特性在系统中不一致,可能会导致系统不稳定。

indent(1)arrow-up-right 工具已更新,如果设置了环境变量 SIMPLE_BACKUP_SUFFIX,将会尊重该变量。(r328138)arrow-up-right

du(1)arrow-up-right 工具新增了长选项 --si,用于以 1000 的幂显示“人类可读”的输出。(r328139)arrow-up-right

df(1)arrow-up-right 工具新增了长选项 --si,该选项是 -H 的别名。(r328140)arrow-up-right

service(8)arrow-up-right 工具新增了 -j 参数,用于与运行在 jail(8)arrow-up-right 中的服务交互。-j 的参数可以是 jail 的名称或其数值 ID。(r328599)arrow-up-right

fsck_ffs(8)arrow-up-right 工具已更新,当文件系统未被修复时,将以非零状态退出。(r328604)arrow-up-right (由 Dell EMC 赞助)

nvmecontrol(8)arrow-up-right 工具已更新,打印 SMART 数据时将显示完整的 128 位值,而非十六进制值。(r328668)arrow-up-right

nvmecontrol(8)arrow-up-right 工具新增了对 Western Digital HGST 驱动器的控制选项,包括 cap-diagget-crash-dumpdrive-logpurgepurge-monitor(r328716)arrow-up-right

dhclient(8)arrow-up-right 工具已更新,使其更符合 RFC2131 标准。当发送 DHCPREQUEST 消息以尝试获取先前分配的 IP 地址时,会将 IP 报文头中的源地址字段设置为 0(r330692)arrow-up-right(由 Dell EMC 赞助)

pw(8)arrow-up-right 工具已更新,允许在 GECOS 字段中使用 @! 字符。(r330694)arrow-up-right(由 Dell EMC 赞助)

zfsd(8)arrow-up-right 工具已更新,可与任何类型的 GEOM 提供者协同工作,包括 md(4)arrow-up-rightgeli(8)arrow-up-rightglabel(8)arrow-up-rightgstripe(8)arrow-up-right(r330733)arrow-up-right(由 Spectra Logic 赞助)

ps(1)arrow-up-right 工具新增了 jail 关键字,用于显示 jail(8)arrow-up-right 的名称,而非其数值 ID。(r331471)arrow-up-right

新增 mlx5tool(8)arrow-up-right 工具,用于管理 mlx5io(4)arrow-up-right 支持的 Connect-X 4 和 Connect-X 5 设备。(r331586)arrow-up-right(由 Mellanox Technologies 赞助)

sysctl(8)arrow-up-right 工具已更新,支持向节点设置一个值数组。在此更新之前,sysctl(8) 只能向可能返回多个值的节点设置一个值。(r331603)arrow-up-right(由 Chelsio Communications 赞助)

ifconfig(8)arrow-up-right 工具新增了 random 选项,与 ether 选项一起使用时,可为接口生成随机 MAC 地址。(r331729)arrow-up-right

新增 efibootmgr(8)arrow-up-right 工具,用于操作 EFI 引导管理器。(r332126)arrow-up-right(由奈飞赞助)

新增 etdump(1)arrow-up-right 工具,用于查看 El Torito 引导目录信息。(r332947)arrow-up-right

mount(8)arrow-up-right 工具已更新,在尝试将写保护介质挂载为可写失败后,允许回退为只读挂载。该行为默认禁用,可通过新增的 autoro 选项启用。(r322753)arrow-up-right

makefs(8)arrow-up-right 工具已更新,其默认块和碎片大小已调整为与 newfs(8)arrow-up-right 工具一致,分别为 32K 和 4K。(r332460)arrow-up-right(由 FreeBSD 基金会赞助)

pwd_mkdb(8)arrow-up-right 工具已更新,当使用 -l 参数时会提示旧数据库支持将在 FreeBSD 12 中移除。(r332929)arrow-up-right(由 FreeBSD 基金会赞助)

dhclient(8)arrow-up-right 工具已更新,能通过 dhclient.conf(5)arrow-up-right 中的条目 supersede 覆盖 interface-mtu 选项。(r334789)arrow-up-right

第三方的软件

libarchive(3)arrow-up-right 库已更新至版本 3.3.2。(r321303)arrow-up-right

Subversion 已更新至版本 1.9.7。(r322442)arrow-up-right

dtc(1)arrow-up-right 工具已更新至上游提交版本 9ce35ff8。(r328495)arrow-up-right

file(1)arrow-up-right 工具已更新至版本 5.32。(r328874)arrow-up-right

OpenSSH 已更新至版本 7.5p1。(r323136)arrow-up-right

mandoc(1)arrow-up-right 工具已更新至版本 1.14.3。(r324581)arrow-up-right

tcpdump(1)arrow-up-right 工具已更新至版本 4.9.2。(r327234)arrow-up-right

NTP 工具已更新至版本 4.2.8p11。(r330106)arrow-up-right

less(1)arrow-up-right 工具已更新至上游版本 v530。(r330570)arrow-up-right

bmake 工具已更新至上游版本 20180222。(r331246)arrow-up-right

BSD 许可的 diff(1)arrow-up-right 工具从 OpenBSD 引入,如果在 src.conf(5)arrow-up-right 中设置了 WITHOUT_GNU_DIFF,该工具会被安装;默认情况下不会安装。(r331465)arrow-up-right

OpenSSL 已更新至版本 1.0.2o。(r331638)arrow-up-right

clang、llvm、lld、lldb 和 compiler-rt 工具以及 libc++ 已更新至上游版本 6.0.0。(r331838)arrow-up-right

时区数据文件已更新至版本 2018e。(r333312)arrow-up-right

libxo(3)arrow-up-right 库已更新至版本 0.9.0。(r334458)arrow-up-right

安装和配置工具

[arm64] bsdinstall(8)arrow-up-right 安装程序已更新为默认仅支持 UEFI 引导。(r322254)arrow-up-right(由 FreeBSD 基金会赞助)

内核

本节涉及对内核配置、系统调优和系统控制参数的变更,这些变更未归类到其他类别中。

内核常规变更

linux(4)arrow-up-right ABI 兼容层已更新,新增对 musl 用户的支持。(r321007)arrow-up-right

fdescfs(5)arrow-up-right 文件系统已更新,支持符合 Linux 特定行为的 fd(4)arrow-up-right /dev/fd/proc/self/fd(r322340)arrow-up-right

新增对多个实时时钟的支持。(r323447)arrow-up-right

内核错误修复

ng_iface(4)arrow-up-right 驱动程序已更新,防止可能导致系统崩溃的问题。(r324175)arrow-up-right

ipfw(4)arrow-up-right 包过滤器已更新,可以区分第 2 层和第 3 层的数据包,从而修复 dummynet(4)arrow-up-right AQM 包标记问题。(r325730)arrow-up-right

修复了导致英特尔® Apollo Lake™ CPU 引导问题的错误。(r333166)arrow-up-right

内核配置

watchdog(4)arrow-up-right 功能已更新,使 SW_WATCHDOG 支持动态配置,从而在无硬件看门狗时启用软件 watchdogd(8)arrow-up-right 选项。(r327920)arrow-up-right

系统调优与控制

sysctl(8)arrow-up-right p1003_1b.aio_listio_max 已变更为运行时可配置的调优参数。(r326322)arrow-up-right(由 Spectra Logic 赞助)

设备和驱动程序

本节涉及自 11.1-RELEASE 以来对设备及设备驱动程序的变更与新增内容。

设备驱动程序

cxgbe(4)arrow-up-right 驱动已更新至固件版本 1.16.63.0,支持 T4、T5 和 T6 网络适配器。(r330307)arrow-up-right(由 Chelsio Communications 赞助)

ng_pppoe(4)arrow-up-right 驱动已更新,新增对用户提供的 Host-Uniq 标签的支持。(r331058)arrow-up-right

新增对 TAIO USB 多协议适配器 (TUMPA) 的支持。(r331500)arrow-up-right

新增 mlx5io(4)arrow-up-right 驱动,为 Connect-X 4 和 Connect-X 5 网络适配器提供管理接口。(r331586)arrow-up-right(由 Mellanox Technologies 赞助)

cm(4)arrow-up-rightfpa(4)arrow-up-right 驱动已被标记为弃用,并将在 FreeBSD 12 中移除。(r331882)arrow-up-right(由美国国防高级研究计划局和美国空军研究实验室赞助)

新增 ocs_fc(4)arrow-up-right 驱动,支持 Emulex 16/8G FC GEN 5 HBAs LPe15004 和 LPe160XX,以及 Emulex 32/16G FC GEN 6 HBAs LPe3100X 和 LPe3200X。(r332040)arrow-up-right(由 Broadcom Limited 赞助)

ixgb(4)arrow-up-right 驱动已被标记为弃用,并将在 FreeBSD 12 中移除。(r333171)arrow-up-right

ixl(4)arrow-up-right 驱动已更新至版本 1.9.9-k。(r333343)arrow-up-right(由英特尔公司赞助)

nxge(4)arrow-up-right 驱动已被标记为弃用,并将在 FreeBSD 12 中移除。(r333367)arrow-up-right

lmc(4)arrow-up-right 驱动已被标记为弃用,并将在 FreeBSD 12 中移除。(r333412)arrow-up-right(由 FreeBSD Foundation 赞助)

新增 smartpqi(4)arrow-up-right 驱动,支持 Microsemi SCSI 控制器。(r333417)arrow-up-right

vxge(4)arrow-up-right 驱动已被标记为弃用,并将在 FreeBSD 12 中移除。(r333738)arrow-up-right

硬件支持

本节涉及对物理设备、虚拟机管理程序和虚拟化环境的一般硬件支持,以及其他不属于本文档其他部分的硬件变更和更新。

虚拟化支持

bhyve(4)arrow-up-right 新增了对 virtio_console(4)arrow-up-right 的支持。(r321413)arrow-up-right

存储

本节涉及对文件系统及其他本地和网络存储子系统的变更与新增。

geom(4)

geom(4)arrow-up-rightgeom_aesgeom_bsdgeom_mbrgeom_sunlabel 已被标记为弃用。这些类已在 FreeBSD 7 中被 geom_part 类替代,并在 FreeBSD 8 中从 GENERIC 内核配置中移除,将在 FreeBSD 12 中被彻底移除。(r332519)arrow-up-right

引导加载程序变更

本节涉及引导加载程序、引导菜单及其他与引导相关的变更。

引导加载程序变更

引导代码和 loader(8)arrow-up-right 已更新,以检查不支持的 ZFS 功能参数。如果激活了不受支持的功能,则该池不会被视为可引导池,并且会在控制台上打印诊断消息。(r321519)arrow-up-right

loader(8)arrow-up-right 已更新以改进引号解析,现在能够区分单引号和双引号,并检查引号是否闭合。(r329010)arrow-up-right

在引导使用加密磁盘的系统时,输入的 GELI 密码短语的长度现在默认隐藏。如需恢复之前的行为,请参阅 geli(8)arrow-up-right 中的配置选项。(r329114)arrow-up-right

网络

本节描述影响 FreeBSD 网络功能的变更。

通用网络变更

icmp6(4)arrow-up-right 协议已更新以修复 ICMPv6 重定向问题。(r329581)arrow-up-right(由 Dell EMC 赞助)

Ports 和软件包基础设施

本节涉及 FreeBSD Ports、软件包基础设施,以及软件包维护和安装工具的变更。

软件包变更

pkg(8)arrow-up-right 工具已更新至版本 1.10.5。

发布工程与集成

本节涉及 FreeBSD 发布工程流程中特定的变更。

集成变更

Amazon EC2™ 实例现在通过 EC2™ 基础设施内部的 Amazon 时间同步服务(NTP 服务)保持时钟同步。(r326892)arrow-up-right

i386 U 盘镜像安装程序已改用 MBR 分区方案,以解决非 UEFI 模式下 GPT 分区方案引起的引导问题。(r333410)arrow-up-right(由 FreeBSD 基金会赞助)

amd64 U 盘镜像安装程序也已改用 MBR 分区方案,以解决非 UEFI 模式下 GPT 分区方案引起的引导问题。(r334444)arrow-up-right(由 FreeBSD 基金会赞助)

最后更新于