原文链接:FreeBSD 11.0-RELEASE Release Notes
FreeBSD 11.0-RELEASE 的发行说明包含了自 11.0-STABLE 开发线以来对 FreeBSD 基本系统所做的变更摘要。本文列出了自上次发布以来发布的相关安全通告,以及对 FreeBSD 内核和用户空间的重大变更。还简要介绍了升级的相关事项。
本文档包含 FreeBSD 11.0-RELEASE 的发行说明。它介绍了 FreeBSD 最近添加、修改或删除的功能,并提供了有关从先前版本的 FreeBSD 升级的一些说明。
此发行版的 FreeBSD 11.0-RELEASE 为 RELEASE 版。可以在 https://www.FreeBSD.org/releases/或其镜像站点找到。有关获取此版本(或其他版本)FreeBSD 的更多信息,请参阅 FreeBSD 手册中的获取 FreeBSD 附录。
强烈建议所有用户在安装 FreeBSD 之前查阅发布的错误文档。错误文档会更新与发布周期末期或发布后发现的“突发”信息。通常,它包含已知的 bug、安全通告以及文档更正。FreeBSD 11.0-RELEASE 的最新错误文档可以在 FreeBSD 官方网站上找到。
本文档介绍了自 10.3-RELEASE 以来 FreeBSD 中最显著的新增或变更功能。通常,本文所述的变更是特定于 11.0-STABLE 分支的,除非特别标记为已合并功能。
典型的发行说明项记录了自 10.3-RELEASE 发布以来发布的安全通告、新驱动程序或硬件支持、新命令或选项、主要的 bug 修复,或第三方的软件升级。它们还可能列出主要的 Port/包或发布工程实践的变更。显然,发行说明无法列出每个版本间对 FreeBSD 所做的所有变更;本文档主要集中在安全通告、用户可见的变更和主要的架构改进上。
本节列出了从以前的 FreeBSD 版本升级时的重要信息。
自 r303719
起,默认禁用了 OpenSSH 的 DSA
密钥生成。升级前更新 OpenSSH 密钥非常重要。此外,已移除 Protocol 1
支持。
[amd64, i386] 版本之间的二进制升级(以及各个安全分支的快照)可以使用 freebsd-update(8) 工具进行支持。二进制升级过程将更新未修改的用户空间工具以及未修改的 GENERIC 内核,这些内核作为官方 FreeBSD 发布的一部分分发。freebsd-update(8)工具要求被升级的主机必须具备互联网连接。
基于源代码的升级(即从源代码重新编译 FreeBSD 基本系统)也受支持,可以在 /usr/src/UPDATING
中找到相关的说明。
有关通过 freebsd-update(8) 进行升级的信息,请参阅安装页面中的“二进制升级部分”。
重要
升级 FreeBSD 之前,请务必备份 所有 数据和配置文件。
本节涉及了用户空间应用程序、第三方软件和系统实用程序的变更和新增内容。
默认的 newsyslog.conf(5) 现在包含了 /etc/newsyslog.conf.d/
和 /usr/local/etc/newsyslog.conf.d/
目录中的文件,用于 newsyslog(8)。(r266463)
mailwrapper(8) 实用程序已更新,使用 LOCALBASE
环境变量中的 mailer.conf(5),如果未设置,默认值为 /usr/local
。(r270675)
已删除 src.conf(5) 选项 MK_ARM_EABI
,现在是 FreeBSD/arm 支持的唯一 ABI。(r272350)
ntp 套件已更新至版本 4.2.8p8。(r301247)
/etc/ntp/leap-seconds
已更新为版本 3676752000。(r301247)
默认启用 src.conf(5) 选项 WITH_SYSTEM_COMPILER
。(r302177)
当无法使用 kldload(8) 加载内核模块时,现会打印一条消息,提示查看 dmesg(8) 的输出,而不是之前的信息 Exec format error.
。(r260594)
pciconf(8) 实用程序现在可以识别已附加到驱动程序的 PCI 设备,并通过设备名称而不仅仅是选择器来标识它们。此外,-l
参数现在接受一个可选的设备参数,以列出单个设备的详细信息。(r260910)
在 /etc/ttys
中新增参数 onifconsole
。这允许系统在设备为活动内核控制台时通过串行控制台提供登录提示,否则等同于 off
。(r260913)
已添加通过 pciconf(8) 显示 PCI 设备 VPD 的支持。(r260926)
ping(8) 实用程序已更新,使用 Capsicum 框架来降低权限,以防止恶意网络数据包的攻击。(r261498)
ps(1) 实用程序已更新,包含 -J
参数,用于通过匹配 jail(8) ID 和名称过滤输出。此外,可以使用参数 0
与 -J
一起,仅列出主机系统上运行的进程。(r265229)
top(1) 实用程序已更新,以通过 jail(8) ID 或名称进行过滤,作为对 ps(1) 在 r265229
中变更的后续更新。(r265249)
pmcstat(8) 实用程序已更新,新增参数 -l
,它在指定的秒数后结束事件收集。(r266209)
ps(1) 实用程序已更新,新增新关键字 tracer
,用于显示跟踪进程的 PID。(r270745)
已为 mkimg(1) 实用程序添加了支持添加空分区的功能。(r271482)
primes(6) 实用程序已更新,正确列出介于 4295098369
和 3825123056546413050
之间的质数。在此变更之前,可能会错误地将返回值识别为质数。(r272166)
mkimg(1) 实用程序已更新,包含三个选项,用于打印有关 mkimg(1) 本身的信息:(r272198)
选项 | 输出 |
---|---|
--version |
当前版本的 mkimg(1) 实用程序 |
--formats |
mkimg(1) 支持的磁盘映像文件格式 |
--schemes |
mkimg(1) 支持的分区方案 |
在 dtrace(1) 中已添加用户空间 ctf(5) 支持。通过此变更, dtrace(1) 能够解析函数和 USDT 探针参数的类型信息以及函数返回值。(r272488)
elfdump(1) 实用程序已更新,支持由 capsicum(4) 提供的能力模式。(r274960)
已新增 fstyp(8) 实用程序,用于确定指定设备上的文件系统。(r275680)(由 FreeBSD 基金会赞助)
libedit
库已更新以支持 UTF-8,这为 sh(1) 提供了额外的 Unicode 支持。 (r276881)
mkimg(1) 工具已更新以支持 MBR EFI 分区类型。 (r276893)(由 FreeBSD 基金会赞助)
ptrace(2) 系统调用已更新,支持 FreeBSD/powerpc 上的 Altivec 寄存器。 (r277166)
新增的设备控制工具 devctl(8) 允许对单个设备进行管理变更,如附加和分离驱动程序,以及启用和禁用设备。devctl(8) 工具使用了新的 devctl(3) 库。 (r278320)
netstat(1) 工具已更新,使用 libxo(3) 可选生成机器可读的输出。 (r279122)(由 Juniper Networks, Inc. 赞助)
mkimg(1) 工具新增 -c
参数,允许指定目标磁盘映像的容量。 (r279139)
新增了 UEFI 安全启动签名工具 uefisign(8)。 (r279315)(由 FreeBSD 基金会赞助)
freebsd-update(8) 工具已更新,以防止在先前的升级未完全完成时获取更新的二进制补丁。 (r279571)(由 ScaleEngine, Inc. 赞助)
已修复 libarchive(3) 库中的回归问题,该问题在使用 --one-file-system
时会导致目录未被包括在归档中。 (r280870)
ar(1) 工具已更新,设置 ARCHIVE_EXTRACT_SECURE_SYMLINKS
和 ARCHIVE_EXTRACT_SECURE_NODOTDOT
,以禁止在提取归档时进行目录遍历,类似于 tar(1)。 (r281311)(由 FreeBSD 基金会赞助)
已修复 wc(1) 中的竞争条件,该问题在接收到 SIGINFO
信号时会导致最终结果被发送到 stderr(4)。 (r281617)
chflags(1)、chgrp(1)、chmod(1) 和 chown(8) 工具现已在指定 -R
参数时影响符号链接,如 symlink(7) 中所述。 (r282208)(由 Multiplay 赞助)
date(1) 工具已更新,以打印作为 -r
参数传递的文件的修改时间,提高了与 GNU date(1) 工具行为的兼容性。 (r282608)
pw(8) 工具已更新,新增了 -R
参数,用于设置工具操作的根目录。 (r283961)
lockstat(1) 工具已更新,新增了几个改进: (r284297)(由 ClusterHQ 赞助)
- 现报告自旋锁的自旋时间,而不是循环迭代次数。
- 现识别读取锁为适应性锁,能够在 FreeBSD 上进行自旋。
- 成功的读取尝试锁事件的锁获取事件现已报告。
- 自旋和阻塞事件现已在锁获取事件之前报告。
fstyp(8) 工具已更新,能够检测文件系统 zfs(8) 和 geli(8) 。 (r284589)(由 ScaleEngine, Inc. 赞助)
mkimg(1) 工具已更新,支持在 MBR 和 GPT 分区方案中使用 NTFS
文件系统。 (r284883)
quota(1) 工具已更新,支持 IPv6。 (r285253)
jexec(8) 工具已更新,新增了参数 -l
,确保在目标 jail 中使用时环境清洁。此外,jexec(8) 在未指定命令时会在目标 jail 中运行一个 shell。 (r285420)
w(1) 工具已更新,显示用户连接的主机的完整 IPv6 远程地址。 (r285550)
jail(8) 框架已更新,能在 jail 中挂载 linprocfs(5) 和 linsysfs(5)。 (r285685)
patch(1) 工具已更新,新增 -V
参数的一个选项 none
,在应用补丁时禁用备份文件的创建。 (r285772) (由 EMC / Isilon Storage Division 赞助)
ar(1) 工具现在默认启用确定性模式 (-D
)。可以通过指定 -U
参数禁用此行为。 (r286010) (由 FreeBSD 基金会赞助)
xargs(1) 工具已更新,允许将 0
作为 -P
(并行模式)参数的参数,从而允许创建尽可能多的并发进程。 (r286289) (由 ScaleEngine, Inc. 赞助)
patch(1) 工具已更新,移除了自动签出功能。 (r286795)
无线网络堆栈已修改,默认不再显示物理无线设备。要查看系统上可用的无线设备,请运行 sysctl net.wlan.devices
。 (r287197) (由奈飞, Nginx, Inc. 赞助)
新增了工具 sesutil(8),用于管理 ses(4)(SCSI 环境服务)设备。 (r287473) (由 Gandi.net 赞助)
pciconf(8) 工具已更新,若存在 misc/pciids
包,则使用其中的 PCI ID 数据库,若没有则回退使用 FreeBSD 基本系统中的 PCI ID 数据库。 (r287522)
解析库已更新,当 /etc/resolv.conf
文件的修改时间发生变化时,会重新加载该文件。 (r289315) (由戴尔公司赞助)
uuencode(1) 工具已更新,新增一个参数 -r
,在使用时将生成类似 uudecode(1) -r
参数的原始输出。 (r297678)
默认情况下,ifconfig(8) 工具将无线接口的默认监管域设置为 FCC
。因此,使用默认设置创建的新无线接口将更少有可能违反国家特定法规。 (r300738)
ul(1) 工具中的一个 bug 已修复,该 bug 会导致行在 512 字符处被截断。 (r302558)
binutils 工具套件已更新,包括添加支持 powerpc 的新重定位的上游补丁。 (r275718)
ELF 工具链已更新为上游修订版本 r3477。 (r300698) (由 FreeBSD 基金会赞助)
已从基本系统中移除 texinfo 工具和 info
页面。需要 info
页面时应安装 port print/texinfo
。 (r276551)
ELF 对象操作工具 addr2line、c++filt、objcopy、nm、readelf、size、strip 和 strings 已切换为 ELF 工具链项目中的版本。 (r276796) (由 FreeBSD 基金会赞助)
xz(1) 工具已更新,支持多线程压缩。 (r278433)
nvi(1) 编辑器及相关工具已更新至版本 2.1.3。 (r281373)
wpa_supplicant(8) 和 hostapd(8) 工具已更新至版本 2.4。 (r281806)
bmake 已更新至版本 20150606。 (r284254)
Sendmail 已更新为 8.15.2。从 FreeBSD 11.0 和 sendmail 8.15 开始,sendmail 默认使用未压缩的 IPv6 地址,即不包含::
。例如, ::1"将变为"0:0:0:0:0:0:0:1
。这允许零子网具有更具体的匹配,例如 IPv6:0:0
与 IPv6:0
的不同映射条目。此变更要求配置数据(包括映射、文件、类、自定义规则集等)必须使用相同的格式,因此在升级之前,请确保配置数据到位。为了简单检查,可以搜索如 IPv6:[0-9a-fA-F:]*::
和 IPv6::
这样的模式。要恢复旧行为,请设置 m4 选项confUSE_COMPRESSED_IPV6_ADDRESSES
或 cf 选项 UseCompressedIPv6Addresses
。(r285229)
tcpdump(1)工具已更新为版本 4.7.4。(r285275)
ssh(1)工具已更新,以重新实现主机名规范化,在known_hosts
中定位主机之前进行处理。(r285642)(由戴尔赞助)
libarchive(3) 库已更新,以正确跳过在 tar(1) 文件中的稀疏文件条目,之前会产生错误。(r285972)
svnlite(1) 工具使用的 apr 库已更新为版本 1.5.2。(r286503)
svnlite(1) 工具使用的 serf 库已更新为版本 1.3.8。(r286505)
acpi(4) 子系统已更新为版本 20150818。(r287168)
unbound(8) 工具已更新为版本 1.5.4。(r287917)
nc(1) 工具已更新为 OpenBSD 5.8 版本。(r288303)
时区数据文件已更新为版本 2015g。(r290697)
xz(1) 工具已更新为版本 5.2.2。(r291125)
mandoc(1) 工具已更新为版本 20160116。(r292257)
OpenBSM 已更新为版本 1.2 alpha 4。(r292432)
Clang 已更新为版本 3.8.0。(r296417)
LLVM 已更新为版本 3.8.0。(r296417)
LLDB 已更新为版本 3.8.0。(r296417)
libc++ 已更新为版本 3.8.0。(r296417)
compiler_rt 工具已更新为版本 3.8.0。(r296417)
resolvconf(8) 工具已更新为版本 3.7.3。(r296190)(由 FreeBSD 基金会赞助)
OpenSSH 已更新为 7.2p2。(r296633)
byacc(1) 工具已更新为版本 20160324。(r297276)
svnlite(1) 和 kerberos(8)使用的 sqlite3 库已更新为版本 3.12.1。(r298161)
libucl 已更新为版本 0.8.0。(r298166)
svnlite(1) 工具已更新为版本 1.9.4。(r298845)
ACPICA 已更新为版本 20160527。(r300879)
libblacklist(3) 库和应用程序已从 NetBSD 项目移植。为 pf(4) 数据包过滤系统实现了数据包过滤支持。黑名单系统提供了 blacklistd 守护进程、帮助脚本 blacklistd-helper 以修改正在运行的包过滤系统,以及 blacklistctl 控制程序。一些系统守护进程,包括 fingerd、ftpd、rlogind 和 rshd,已被修改以支持向 blacklistd 守护进程发送通知。(r301169)(由 FreeBSD 基金会赞助)
jemalloc(3) 库已更新至版本 4.2.1。(r301718)
已为 blacklistd-helper 脚本添加对 ipfw(4) 数据包过滤器的支持。(r301736)(由 FreeBSD 基金会赞助)
已为 blacklistd-helper 脚本添加对 ipfilter(4) 数据包过滤器的支持。(r301843)(由 FreeBSD 基金会赞助)
file(1) 实用程序已更新至版本 5.28。(r302221)
OpenSSH 已移除对 SSHv1 的支持。(r303716)
默认禁用了对 DSA 的支持。(r303719)
OpenSSL 已更新至版本 1.0.2i。(r306198)
已更新 bsdinstall(8) 分区编辑器和 sade(8) 实用程序,加入对 ZFS 的原生支持。(r271539)
FreeBSD 安装工具 bsdinstall(8) 已更新,以将 canmount
zfs(8) 属性设置为 off
,防止在使用多个启动环境(例如 sysutils/beadm
提供的环境)时,/var
目录中的内容发生冲突。(r272274)
bsdconfig(8) 工具已更新,当在虚拟机中运行时,将跳过初始的 tzsetup(8) UTC 与壁钟时间提示,这在设置 sysctl(8) kern.vm_guest
为 1
时判断。(r274394)
bsdinstall(8) 工具已更新,使用新的 dpv(3) 库,在解压 FreeBSD 分发文件时显示进度。(r275874)
bsdinstall(8) 已加入支持检测和实现对 1Mb 边界对齐的分区。(r285557)(由 ScaleEngine, Inc. 赞助)
bsdinstall(8) 已加入支持检测和实现对某些笔记本电脑和主板的解决方法,这些笔记本电脑和主板无法从 GPT 分区的磁盘启动。此外,当需要时,active
参数将会设置在分区上。(r285679)(由 ScaleEngine, Inc. 赞助)
bsdinstall(8) 已加入支持在安装 UFS 文件系统时选择分区方案。(r285679)(由 ScaleEngine, Inc. 赞助)
bsdinstall(8) 工具现在支持安装时的 "BIOS+UEFI 选项",支持带 UEFI 或 BIOS/CSM 功能的系统。(r298243)
bsdinstall(8) 工具已更新,加入了在安装过程中提供各种系统安全加固选项。(r303447)
rc(8) 子系统已更新,允许在 ${LOCALBASE}/etc/rc.conf.d/
中配置服务。如果未设置 LOCALBASE
,则默认为 /usr/local
。(r270676)
新增了 rc(8) 脚本 growfs
,如果 /firstboot
存在并且在 rc.conf(5) 中启用了 growfs_enable
,则该脚本将在启动时调整根文件系统的大小以填充设备。(r273955)
mrouted
rc(8) 脚本已从基本系统中移除。等效的脚本可以通过 Port net/mrouted
获得。(r275299)
service(8) 实用程序已更新,支持 /etc/rc.conf.d/
中的条目。(r287576)(由 ScaleEngine, Inc. 赞助)
rc(8) 子系统新增了两个子命令。describe
显示 rc 脚本的描述;extracommands
显示 rc 脚本中存在的任何非标准命令,如 reload
、configtest
或 keygen
。(r298515)
每日 periodic(8) 脚本 110.clean-tmps
已更新,以避免在清理 /tmp
中的文件时跨越文件系统挂载边界。(r271321)
新增了 periodic(8) 脚本 510.status-world-kernel
,该脚本评估运行中的用户空间和内核版本(通过 uname(1) 的 -U
和 -K
参数),如果系统的用户空间和内核不同步,则输出错误信息。(r277216)(由 FreeBSD 基金会赞助)
Blowfish crypt(3) 默认格式已变更为 $2b$
。(r265995)
readline(3) 库现在在基本系统中静态链接,且不再安装共享库,这样 Ports 可以使用库的现代版本。(r268461)
strptime(3) 库已更新,支持 POSIX-2001 特性 %U
和 %W
。(r272273)
dl_iterate_phdr(3) 库已变更,始终返回 ELF 对象的路径名,存储在 dlpi_name
结构成员中。(r272848)(由 FreeBSD 基金会赞助)
libxo(3) 库已导入到基本系统中。(r273562)(由 Juniper Networks, Inc. 赞助)
为 Chelsio Terminator 5 基于 iWARP 的网卡添加了用户空间库,能在兼容的 NIC 上运行用户空间 RDMA 应用程序。(r273806)(由 Chelsio Communications 赞助)
新增了 gpio(3) 库,为 gpio(4) 内核接口提供了一个包装器。(r274987)
procctl(2) 系统调用已更新,包含一个功能,允许非 init(8) 进程声明为子进程及其后代的清理进程。(r275800)(由 FreeBSD 基金会赞助)
新增了 futimens()
和 utimensat()
系统调用。有关更多信息,请参见 utimensat(2)。(r277610)
已从 dtri.o
中移除 elf(3) 编译时依赖关系,允许将 DTrace 探针添加到用户空间应用程序和库中,而无需与 elf(3) 进行链接。(r278934)
setmode(3) 函数已更新,以在失败时一致地设置 errno
。(r279186)
与 qsort(3) 相关的函数已更新,可以在 64 位平台上处理 32 位对齐数据,并显著提升 32 位工作负载的性能。(r279663)
多个标准头文件已更新,利用 gcc 属性,如 result_use_check()
、alloc_size()
和 __nonnull()
。(r281130)
已添加文件验证的 MAC 支持。(r281845)
libgomp
库现在仅在从基本系统构建 GCC 时才构建。一个最新版本可以在 Ports 中作为 devel/libiomp5-devel
获取。(r282973)(由 FreeBSD 基金会赞助)
已更新头文件 stdlib.h
和 malloc.h
,以利用 gcc 的 alloc_align()
属性。(r282988)
Blowfish crypt(3) 库已更新,支持 $2y$
哈希。(r284483)(由 ScaleEngine, Inc. 赞助)
execl(3) 和 execlp(3) 库函数已更新,以使用 gcc 属性 __sentinel
。(r285277)
Linux® 兼容版本已更新为 2.6.18
。在构建 emulators/linux-c6
及相关 Port 时,会评估 compat.linux.osrelease
sysctl(8)。(r271982)
堆栈保护器已升级为“strong(强)”级别,增强了对缓冲区溢出的保护。尽管这显著提高了系统安全性,但进行了广泛的测试,以确保不会对性能或功能产生可测量的副作用。(r288669)
本节介绍内核配置、系统调优和系统控制参数的变更,这些内容未被其他分类覆盖。
修复了一个内核错误,该错误阻止了在启用 Turbo Boost™ 的 Intel® 处理器上正确功能的 dev.cpu.0.freq
sysctl(8)。(r265876)
已修复 FreeBSD/powerpc 中的 dtrace(1) 堆栈追踪功能,使用函数 trapexit()
和 asttrapexit()
,而不是在已寻址的内核空间内进行检查。(r271697)
修复了在销毁配置了 gif(4) 的 vnet(9) jail(8) 时触发的内核 panic 错误。(r271917)
修复了在销毁配置了 gre(4) 的 vnet(9) jail(8) 时触发的内核 panic 错误。(r271918)
修复了 ipfw(4) 中的一个 bug,该 bug 可能会在使用 dummynet(4) 时在第 2 层引发内核 panic 错误。(r272089)
内核 RPC 已更新,包含多个增强功能:(r280930)(由麻省理工学院计算机科学与人工智能实验室赞助)
- 已移除
nfsd(8)
线程请求队列的 45 MiB 限制。 - 通过不推迟已完成请求的会计核算,避免不必要的节流。
- 修复了整数溢出和符号错误。
已为 PowerPC Book-E™ 添加了 dtrace(1) 支持。(r281261)
kqueue(2) 系统调用已更新,能够处理超过 2 GB 的文件写入事件。(r287886)(由 Multiplay 赞助)
现已默认启用内核配置选项 IMAGACT_BINMISC
,从而支持通过仿真器执行应用程序,如通过 binmiscctl(8) 通过 QEMU 执行应用。(r266531)
已移除 VT
内核配置文件,且驱动程序 vt(4) 已包含在 GENERIC
内核中。要启用 vt(4),在启动时在 loader(8) 提示符下输入 set kern.vty=vt
,或将 kern.vty=vt
添加到 loader.conf(5) 中并重启系统。(r268045)
config(8) 工具已更新,允许使用非标准的 src/
树,该树作为 -s
参数的参数进行指定。(r277904)
FreeBSD/powerpc64 内核现在构建为位置独立的可执行文件,允许将内核加载到任何物理或虚拟地址并运行。(r277990)
重要
此变更需要更新 loader(8)。用户空间和内核必须在重启系统之前更新。
为树莓派添加了新的模块,用于创建 rpi.dtb
。(r278338)
[arm] rpi.dtb
模块现在默认安装到树莓派系统的 /boot/dtb/
路径下。(r278340)
为 POWER7 和 POWER8 硬件添加了对向量-标量扩展(VSX)的内核支持。(r279189)(由 FreeBSD 基金会赞助)
64 位 PowerPC® 处理器的 pmap(9) 实现经过了改进,以提高并发性。(r279252)(由 FreeBSD 基金会赞助)
为 ARM AM335x 系统添加了新的 dtb
模块创建模块。(r279824)
为 FreeBSD/i386 添加了内核配置选项 PAE_TABLES
,它指示 pmap(9) 在保持 32 位物理地址大小的同时,使用 PAE 格式的页面表。使用此选项可以通过在现代 i386 处理器上启用“不可执行”映射来增强应用级安全性。与 PAE
选项不同,PAE_TABLES
保持与非 PAE
内核的内核二进制接口(KBI)兼容,允许非 PAE
内核模块和驱动程序与启用 PAE_TABLES
的内核一起工作。此外,系统限制被调整为最大 4GB 的内存,以避免内核虚拟地址空间(KVA)耗尽。(r281495)(由 FreeBSD 基金会赞助)
添加了内核选项 SIFTR
,允许将 siftr(4) 静态编译到内核中。(r282215)
ARM 引导加载程序 ubldr
现在是可重定位的。此外,ubldr.bin
现在在构建时创建,这是一个去除符号的二进制文件,入口点为 0
,提供了通过在 u-boot
中运行 go ${loadaddr}
来指定加载地址的能力。(r282731)
[amd64,i386] nvd(4) 和 nvme(4) 驱动程序现在默认包含在 GENERIC
内核配置中。(r282921)(由英特尔公司赞助)
添加了一个新的内核配置选项 EM_MULTIQUEUE
,它启用 em(4) 驱动程序的多队列支持。(r283959)(由 Limelight Networks 赞助)
注意
em(4) 驱动程序的多队列支持并未得到英特尔® 官方支持。
已更新 GENERIC
内核配置,默认包括选项 IPSEC
。(r285142)(由 Netgate 赞助)
添加了初步的 NUMA 亲和性和策略配置。有关用法详情,请参见 numactl(1) 和 numa_getaffinity(2)。(r285387)(由 Norse Corporation 和戴尔公司赞助)
注意
如果系统 BIOS 生成了无效的 ACPI SRAT 表,内核将忽略它,实际上禁用了 NUMA。如果 dmesg 显示
SRAT: Duplicate local APIC ID
,请尝试更新 BIOS 以修复 NUMA 支持。
已为 amd64 和 arm64 添加对运行 CloudABI 可执行文件的支持。CloudABI 是一个只使用基于能力的安全性的运行时环境,类似于 capsicum(4) 始终启用的方式。它使得设计、实施和测试高度沙盒化的应用程序变得更加容易。(r285307)
为支持的架构添加了 pms(4) 驱动程序到 GENERIC
内核配置中。(r286231)
CUBIEBOARD2
内核配置已更名为 A20
,以支持其他配备 A20
处理器的板子,如 Banana Pi。(r287306)
现在将内核调试符号安装到 /usr/lib/debug/boot/kernel/
中。若要保留以前的行为,请在 src.conf(5) 中添加 KERN_DEBUGDIR=""
。(r288176)(由 FreeBSD 基金会赞助)
现在内核默认包含 POSIX 异步 I/O 支持。已删除内核选项 VFS_AIO
和内核模块 aio.ko
。默认情况下,允许对套接字、本地文件和磁盘设备进行异步 I/O 操作。然而,对其他文件类型的操作被禁用。有关更多细节,请参见 aio(4) 手册页。(r296277)(由 Chelsio Communications 赞助)
[arm64] arm64 已默认切换为使用 INTRNG
。(r301565)(由 FreeBSD 基金会赞助)
hwpmc(4) 的默认和最大调用链深度已增加。默认值从 16
增加到 32
,最大值从 32
增加到 128
。(r275140)(由 FreeBSD 基金会赞助)
现在可以配置为 jail(8) 参数 kern.osrelease
和 kern.osreldate
。(r279361)
设备文件系统 devfs(5) 已变更,以秒级精度更新读/写操作的时间戳。添加了新的 sysctl(8) vfs.devfs.dotimes
,当设置为非零值时,启用这些操作的默认精度时间戳。(r280949)(由 iXsystems 和 FreeBSD 基金会赞助)
添加了新的 sysctl(8) kern.racct.enable
,当设置为非零值时,允许在 GENERIC
内核上使用 rctl(8)。同时也添加了新的内核配置选项 RACCT_DISABLED
。(r282213)(由 FreeBSD 基金会赞助)
GENERIC
内核配置现在默认包括 RACCT
和 RCTL
。(r282901)(由 FreeBSD 基金会赞助)
注意
要在使用
GENERIC
内核配置的系统上启用RACCT
和RCTL
,请将kern.racct.enable=1
添加到 loader.conf(5),然后重新启动系统。
添加了新的 sysctl(8) net.inet.tcp.hostcache.purgenow
,当在运行时设置为 1
时,将刷新所有 net.inet.tcp.hostcache
条目。(r283136)(由 Limelight Networks 赞助)
添加了新的 sysctl(8) hw.model
,可显示 CPU 型号信息。(r285524)
uart(4) 驱动程序已更新,允许在运行时调整捕获在 CTS 线上的每秒脉冲,而之前只能使用 DCD 线而无需重新构建内核。(r286591)
本节涉及自 10.3-RELEASE 以来的设备和设备驱动程序的变更和新增内容。
已为 uhso(4) 添加对 GPS 端口的支持。(r260903)
已添加 full(4) 设备,并移除了 lindev(4)
设备。在此变更之前,lindev(4)
仅提供 /dev/full
字符设备,在写入尝试时返回 ENOSPC
错误。由于该设备并非专为 Linux® 设计,因此已添加了一个 FreeBSD 原生版本。(r265132)
drm/i915
驱动程序已添加硬件上下文支持,增加了对 Mesa 9.2 及更高版本的支持。(r271705)
已更新驱动程序 vt(4) ,替换了位图形式的 kern.vt.spclkeys
sysctl(8),并使用了独立的 kern.vt.kbd_*
衍生。(r273178)
hpet(4) 驱动程序已更新,以创建 /dev/hpetN
设备,从用户空间提供对 HPET 的访问。(r273598)
drm
代码已更新,以匹配 Linux® 版本 3.8.13。(r280183)
psm(4) 驱动程序已更新,增加了对较新款 Synaptics® 触控板和较新款联想™笔记本电脑上的 ClickPad® 鼠标的改进支持。(r281440)
已为 FreeBSD/powerpc 添加对 Freescale PCI 根复合设备的支持。(r282783)
已添加 cyapa(4) 驱动程序,支持 Cypress APA I2C 触控板。(r285876)
已添加 isl(4) 驱动程序,支持 Intersil I2C ISL29018 数字环境光传感器。(r285883)
已添加 mpr(4) 设备,提供对 LSI Fusion-MPT 3 12Gb SCSI/SATA 控制器的支持。(r265236)(由 LSI 和 Spectra Logic 赞助)
已添加 mrsas(4) 驱动程序,提供对 LSI MegaRAID SAS 控制器的支持。在默认情况下,mfi(4) 驱动程序将附加到控制器。要启用 mrsas(4),请将 hw.mfi.mrsas_enable=1
添加到 /boot/loader.conf
,这将关闭 mfi(4) 设备探测。(r265555)(由 LSI 赞助)
注意
目前,mfiutil(8) 工具以及 FreeBSD 版本的 MegaCLI 和 StorCli 不支持 mrsas(4)。
ctl(4) 子系统已更新,将端口限制从 128
增加到 256
,LUN 限制从 256
增加到 1024
。(r275461)(由 iXsystems 赞助)
已移除 asr(4)
驱动程序,并不再支持。(r276526)
hptnr(4) 驱动程序已更新至版本 1.1.1。(r281387)
已添加 pms(4) 驱动程序,提供对 PMC Sierra 系列 SAS/SATA 主机总线适配器的支持。(r285662)
已添加 ioat(4) 驱动程序,提供对 PSE(平台存储扩展)的支持。(r287117)(由 EMC / Isilon Storage Division 赞助)
CTL 高可用性实现已重写。(r287621)(由 iXsystems 赞助)
ctl(4) 驱动程序已更新,以支持光盘和可移动设备。(r288310)
isp(4) 驱动程序已更新和改进:增加了对 16Gbps FC 卡的支持,改进了目标模式支持,完成了多 ID(NPIV)功能。(由 iXsystems 赞助)
已添加对博通芯片组 BCM57764、BCM57767、BCM57782、BCM57786 和 BCM57787 的支持到bge(4)中。 (r258830)
已移除弃用的 nve(4) 驱动程序。建议 NVIDIA nForce MCP 网络适配器的用户改用 nfe(4) 驱动程序,该驱动程序自 FreeBSD 7.0 以来一直是该硬件的默认驱动。 (r261975)
新增了 if_nf10bmac(4)
设备,支持 NetFPGA-10G 嵌入式 CPU 以太网核心。 (r264601)(由美国国防高级研究计划局,美国空军研究实验室 赞助)
注意
if_nf10bmac(4)
驱动程序运行在 FPGA 上,不适用于 PCI 主机接口。
已更新 ath_hal(4) 驱动程序,支持 Atheros AR1111 芯片组。 (r265348)(由 Netgate 赞助)
已新增 iwn(4) 驱动程序,支持 Intel® Centrino™ Wireless-N 105 和 135 芯片组。 (r266770)
已将 cxgbe(4) 支持的 Terminator 5 (T5) 10G/40G 卡添加到netmap(4)中。 (r266757)(由 Chelsio Communications 赞助)
已更新 alc(4) 驱动程序,支持 AR816x 和 AR817x 以太网控制器。 (r272730)
已变更 pf(4) 数据包过滤器的默认哈希算法,从 Jenkins
改为 Murmur3
,提供了 3%的每秒数据包性能提升。 (r272906)
新增了 vxlan(4) 驱动程序,它在第 3 层(IP/UDP)网络上创建了一个虚拟的第 2 层(以太网)网络。该vxlan(4) 驱动程序类似于 vlan(4),但旨在更适合大型、多租户数据中心环境。 (r273331)
已大幅更新 gre(4) 驱动程序,并将其拆分为两个独立的模块,gre(4)和me(4)。(r274246)(由 Yandex LLC 赞助)
已更新 ral(4) 驱动程序,支持 RT5390 和 RT5392 芯片组。 (r278551)
已更新 sfxge(4) 驱动程序,支持 Solarflare Flareon Ultra 7000 系列芯片组。 (r283514)(由 Solarflare Communications, Inc.赞助)
已更新 em(4) 驱动程序,改善了传输队列挂起检测。 (r283923)(由 Limelight Networks 赞助)
已更新 cdce(4) 驱动程序,增加了对 RTL8153 芯片组的支持。 (r284125)
已从 OpenBSD 导入 iwm(4) 驱动程序,支持 Intel® 3160/7260/7265 无线芯片组。 (r286441)
已更新 em(4) 驱动程序,允许禁用 CRC 剥离。(r286829)(由 Limelight Networks 赞助)
已更新 pf(4)实现,移除了对 scrub fragment crop|drop-ovl
过滤规则的支持。具有此规则的系统将在 pf.conf(5) 中自动转换为 scrub fragment reassemble
过滤规则,无需干预。 (r287222)
已更新 lagg(4) 驱动程序,移除了对 fec
协议的支持。 (r288654)
已更新 dummynet(4) 驱动程序,增加了对 AQM(主动队列管理)的支持,支持 PIE(比例积分控制器增强)和 FQ-PIE(公平队列比例积分控制器增强)。 (r300779)
本节涉及了物理机器、虚拟化环境和虚拟化环境中硬件的通用支持,以及与硬件相关的变更和更新,这些内容无法归入文档其他部分。
asmc(4) 驱动程序已更新,支持 Apple® MacMini 3,1。(r268303)
从 FreeBSD 11 起,已不再支持 FreeBSD/ia64(Itanium,安腾)。(r268351)
修复了一个可能导致系统在进入 ACPI S3
状态(RAM 休眠)时挂起的问题,涉及 acpi(4) 和 pci(4) 驱动程序。(r274386)
电源管理单元子系统已更新,支持某些 PowerPC 硬件的电源按钮事件,例如铝制 PowerBook。(r274733)
hwpmc(4) 驱动程序已更新,以修复 PowerPC G4(MPC74xxx)和 G5 类处理器的性能计数器采样问题。(r275190)
OpenCrypto 框架已更新,增加了 AES-ICM
和 AES-GCM
模式,这些模式也已添加到 aesni(4) 驱动程序中。(r275732)(由 FreeBSD 基金会和 Netgate 提供赞助)
[powerpc] hwpmc(4) 驱动程序已更新,支持 Freescale e500 核心。(r281713)
ig4(4) 驱动程序已添加,支持第四代 Intel® I2C SMBus。(r283766)
uart(4) 驱动程序已更新,支持新系统上的 AMT 设备。
[arm64] FreeBSD/arm64 平台已增加初始的 SMP 支持。(r285316)(由 FreeBSD 基金会提供赞助)
enc(4) 驱动程序已更新,允许在运行时通过 kldload(8) 创建接口,而无需额外的内核和/或用户空间变更。(r291292)(由 Yandex LLC 提供赞助)
Freescale QorIQ SoC 的 dtsec(4)
驱动程序已添加,支持 P2041、P3041、P5010 和 P5020 系统。(r296177)
Freescale PowerQUICC 和 QorIQ 系统现在支持更大的地址空间,相当于 i386 上的 PAE 模式。(r297001)
e500mc 和 e5500 PowerPC 核心现在受支持,支持大多数 QorIQ 系统。(r297977)
多核 Freescale QorIQ 系统的 SMP 现在可以正确工作,适用于具有引导等待模式(而非自旋循环等待模式)AP 核心的 SoC。(r298237)
如果 CPU 支持,Intel® VT-x 的“虚拟中断传递”功能已启用。可以通过运行 sysctl hw.vmm.vmx.use_apic_vid=0
禁用此功能。此外,为了在重启后保留此设置,可以将 hw.vmm.vmx.use_apic_vid=0
添加到 /etc/sysctl.conf
。(r260410)
如果 CPU 支持,已启用“已发布中断处理”功能。可以通过运行 sysctl hw.vmm.vmx.use_apic_pir=0
禁用此功能。此外,为了在重启后保留此设置,可以将 hw.vmm.vmx.use_apic_pir=0
添加到 /etc/sysctl.conf
。(r260532)
已为 virtio_blk(4) 添加了未映射 IO 支持。(r260582)
已为 virtio_scsi(4) 添加了未映射 IO 支持。(r260583)
已添加 virtio_random(4) 驱动程序,用于从主机系统收集熵。(r260847)
现在可以在 bhyve 上运行 FreeBSD/i386 虚拟机。(r261504)
已增加对 FreeBSD/amd64 Xen 客户实例以 PVH 模式运行的支持。PVH 模式("Para-Virtualized Hardware" 的缩写)使用 para-virtualized 驱动程序进行启动和 I/O,并使用硬件虚拟化扩展处理所有其他任务,无需仿真。(r267536)(由 Citrix Systems R&D 提供赞助)
bhyve(8) 超级监视器已更新,支持带有 SVM 和 AMD-V 硬件扩展的 AMD® 处理器。(r273375)
已添加 virtio_console(4) 驱动程序,通过 tty(4) 设备提供对 VirtIO 控制台设备的接口。(r273515)
已引入对 PCI 单根 I/O 虚拟化(SR-IOV)的支持,允许为支持 SR-IOV 的设备驱动程序创建 PCI 虚拟功能(VF)。有关创建和配置 VF 的详细信息,请参见 iovctl(8)。(r279463)(由 Sandvine, Inc. 提供赞助)
bhyve(8) 超级监视器已更新,支持虚拟 AHCI 磁盘的 DSM TRIM
命令。(r279957)
[arm] 已增加对 QEMU virt
系统的支持。(r281439)
Hyper-V™ 驱动程序已更新,包含多个增强功能:(r282212)(由微软开源技术中心提供赞助)
- hv_vmbus(4) 驱动程序现在支持多通道。
- hv_storvsc(4) 驱动程序现在支持散布/聚集,并提高了性能。
- hv_kvp(4) 驱动程序已修复多个漏洞。
已删除对 xen(4) para-virtualized domU
内核的支持。(r282274)
hv_netvsc(4) 驱动程序已更新,支持校验和卸载和 TSO。(r284746)(由微软开源技术中心提供赞助)
xen(4) blkfront 驱动程序已更新,支持 blkif
间接段 I/O。(r286062)
当在 AWS EC2 上运行时,Xen blkfront 驱动程序默认启用间接段 I/O。(r302288)
bhyve(8) 超级监视器已增加对本地图形的支持。(r302332)
默认启用 nand(4) 设备支持 ARM 设备。(r260921)
增加了对 Exynos 5420 Octa 系统的支持。(r266943)
为所有 FreeBSD 支持的 Exynos 5 系统启用了 SMP 选项。(r267390)
增加了对 Toradex Apalis i.MX6 开发板的支持。(r268838)
修复了在树莓派 SOC 上检测 SD 卡时可能导致不稳定的问题。(r273264)
增加了驱动程序 bcm2835_cpufreq
,支持树莓派 SOC 上的 CPU 频率和电压控制。(r275963)
增加了通过 shutdown(8) -p
参数或调用 poweroff(8) 关闭 BeagleBone Black 系统的支持。(r277042)
增加了用于数字音频多路复用器(AUDMUXM)、智能直接存储器访问控制器(SDMA)和同步串行接口(SSI)的音频传输驱动程序。(r277644)
增加了对 ARM AArch64 架构的初步支持。(r280259)(由 FreeBSD 基金会赞助)
增加了对 Thumb-2 用户空间的内核支持。(r282779)
增加了对 BeagleBone Black 系统硬件电源按钮的支持。(r282827)
增加了对 FreeBSD/arm64 的初步 ACPI 支持。(r284273)(由 FreeBSD 基金会赞助)
增加了对 1-Wire 设备的支持,通过 gpio(4) 提供对 1-Wire 硬件的支持。更多信息请参见 ow(4)、owc(4) 和 ow_temp(4)。(r287225)
增加了对 HiSilicon HI6220 SoC 的支持。(r287371)(由 ABT Systems, Ltd. 提供赞助)
启用了 Allwinner A20 SoC 上的第二个 CPU 核心。(r263698)
增加了对 Allwinner H3 SoC 的支持。(r299688)
增加了对 X-Powers AXP813 和 AXP818 电源管理集成电路的支持。(r299786)
增加了对 Allwinner Reduced Serial Bus (RSB) 的支持。(r299781)
增加了对 Allwinner A20 HDMI 的支持。(r296064)
增加了对 AXP209 电源管理集成电路上 GPIO、传感器和中断的支持。(r300777)
默认启用 amd64、arm64 和 powerpc 的原生 PCIe 热插拔支持。此功能暴露了某些硬件上的兼容性问题,导致设备丢失或启动时挂起。为避免此类问题,请在引导加载器中运行 set hw.pci.enable_pcie_hp=0
,并将 hw.pci.enable_pcie_hp=0
添加到 /boot/loader.conf
中。(r299142)
本节涉及了文件系统和其他存储子系统的变更和新增功能,包括本地存储和网络存储。
ctl(4) LUN 映射已被重写,替换了特定于 iSCSI 的映射机制,采用了适用于所有端口的新机制。(r278037)(由 iXsystems 赞助)
ctld(8) 工具已更新,允许控制非 iSCSI 的 ctl(4) 端口。(r278354)(由 iXsystems 赞助)
autofs(5) 子系统已更新,包含了新的 auto_master(5) 映射 -media
,该映射允许自动挂载可移动媒体,如 CD 驱动器和 USB 闪存驱动器。(r275681)(由 FreeBSD 基金会赞助)
autofs(5) 子系统已更新,包含了新的 auto_master(5) 映射 -noauto
,用于处理 fstab(5) 中设置为 noauto
的条目。(r279955)(由 FreeBSD 基金会赞助)
GELI 类已更新,支持 BIO_DELETE
g_bio(9) bio_cmd
字段,提供对 GELI 支持的 SSD 存储提供商的 TRIM/UNMAP 支持。(r286444)
camdd(8) 工具已添加,允许将数据顺序地复制到和从 SCSI 设备、文件、块设备和磁带驱动器。如果源和/或目标是 SCSI 磁盘,camdd(8) 可以使用异步的 pass(4) 接口来排队多个 I/O,从而提高速度。(camdd(8) 的 ATA 直通支持正在开发中。)(r291716)(由 Spectra Logic 赞助)
pass(4) SCSI/ATA 直通驱动程序现已具有异步接口。用户应用程序可以排队多个请求,通过 kqueue(2) 获得完成通知,并稍后检索状态。camdd(8) 是使用该接口的示例应用程序。(r291716)(由 Spectra Logic 赞助)
已为 ctld(8) 增加了对解析基于 libucl 的配置文件的支持。(r295212)(由 iXsystems 赞助)
ahci(4) 驱动程序已更新,增加了对支持 NCQ TRIM 的驱动器的支持。(r298002)(由奈飞赞助)
注意
已将那些宣传支持此功能但未能正确支持的驱动器列入黑名单。遇到启用 NCQ TRIM 后流量问题的系统,可以将可调参数
kern.cam.ada.%d.quirks
设置为2
(适用于 512k 扇区)或3
(适用于 4096k 扇区),并将%d
替换为驱动器编号。
cam(4) 驱动程序已更新,允许根据工作负载和驱动器特性调优 I/O 调度。此选项默认为关闭,可以通过将 option CAM_IOSCHED_ADAPTIVE
选项添加到内核配置并重新编译内核来启用。(r298002)(由奈飞赞助)
camcontrol(8) 命令可以通过 reprobe
子命令手动强制更新在磁盘调整大小后更新容量数据。(r299371)(由 FreeBSD 基金会赞助)
在填充 CAM 序列号时,SCSI 磁盘序列号的前导空格现已被去除。这影响了 diskinfo(8) 的输出和 /dev/diskid/DISK-*
设备节点的名称等内容。(r300880)(由 Spectra Logic 赞助)
增加了对管理 Shingled Magnetic Recording(SMR)驱动器的支持。(r300207)(由 Spectra Logic 赞助)
新增了文件系统自动挂载功能,autofs(5)。该新功能类似于其他类 UNIX® 操作系统中的功能,如 OS X™ 和 Solaris™。此功能使用与 Sun™ 兼容的auto_master(5) 配置文件,并通过 automount(8) 用户空间工具、automountd(8)和autounmountd(8) 守护进程进行管理。 (r270096)(由 FreeBSD 基金会赞助)
新增了对 mount_nfs(8) 命令中选项 timeo
、actimeo
、noac
和 proto
的支持。 (r273849)(由 FreeBSD 基金会赞助)
导入了 Mellanox 实现的 iSER(iSCSI 扩展 RDMA)。(r300723)
新增了在不附加到目标的情况下发现 iSCSI 目标的功能,支持在iscsictl(8)命令中使用。(r301033)(由 FreeBSD 基金会赞助)
现在可以通过 sysctl(8) kstat
查看 arc_meta_limit
统计信息。由于此变更,已移除 sysctl(8) vfs.zfs.arc_meta_used
,并替换为 sysctl(8) kstat.zfs.misc.arcstats.arc_meta_used
。 (r275748)
已更新 zfs(8) 的 l2arc
代码,在收集要写入 l2arc
设备的缓冲区时考虑了 ashift
值。 (r287099)(由 ClusterHQ 赞助)
已向 rctl(8) 添加四个新资源,允许对文件系统 I/O 设置限制。 (r297633)(由 FreeBSD 基金会赞助)
已添加守护进程 zfsd ,用于管理热备份和驱动槽中的替换,发布物理路径。 (r300906)(由 iXsystems、Spectra Logic 赞助)
ZFS 自适应替换缓存的最小值和最大值可以在运行时修改。 (r302265)(由 Multiplay 赞助)
已向 gpart(8) 添加对 disklabel64
分区方案的支持。 (r267359)
已向 gpart(8) 添加对 apple-boot
、apple-hfs
和 apple-ufs
MBR 分区方案的支持。 (r282465)
已更新 gpart(8) 工具,新增了 GPT 分区的新属性 lenovofix
,当设置时,能够解决在几款联想™笔记本上报告的 BIOS 兼容性问题。 (r285594)(由 ScaleEngine, Inc. 赞助)
本节涉及了引导加载器、引导菜单和其他与引导相关的变更。
在 FreeBSD/amd64 平台上,启动时执行的内存测试已默认禁用。(r258431)(由 FreeBSD 基金会赞助)
新增了 ttys(5) 类,3wire
。它类似于现有的终端类,但没有定义波特率。(r262955)
驱动程序 vt(4) 已成为默认的系统控制台驱动程序。syscons(4) 驱动程序仍然可用,可以通过在 loader.conf(5) 中添加 kern.vty=sc
来启用。或者,也可以通过在 loader(8) 提示符下输入 set kern.vty=sc
来启用 syscons(4)。(r274085)
EFI 加载器已增加对 bzipfs
的支持。(r279950)
引导加载器已更新,以支持在加载内核之前输入 GELI 密码短语。要启用此行为,请在 loader.conf(5) 中添加 geom_eli_passphrase_prompt="YES"
。(r281616)
[arm] 更新了 FreeBSD/arm 的 ttys(5) 文件,默认启用ttyu1
、ttyu2
和ttyu3
,如果来电端口是活动的控制台端口。(r284683)(由 FreeBSD 基金会赞助)
模块的默认安装目录已变更为 /boot/modules
。(r299393)
本节介绍了影响 FreeBSD 网络的变更。
已移除对 IPX 网络传输协议的支持,并且在 FreeBSD 11 及以后的版本中将不再支持。(r263140)
已为 tcp(4) 堆栈添加了对 PLPMTUD 黑洞检测(RFC 4821)的支持,默认情况下已禁用。新增的控制可调参数如下:(r272720)(由 Limelight Networks 赞助)
可调项 | 描述 |
---|---|
net.inet.tcp.pmtud_blackhole_detection |
启用或禁用 PLPMTUD 黑洞检测 |
net.inet.tcp.pmtud_blackhole_mss |
尝试的 IPv4 MSS |
net.inet.tcp.v6pmtud_blackhole_mss |
尝试的 IPv6 MSS |
新增的监控sysctl(8)参数如下:
可调项 | 描述 |
---|---|
net.inet.tcp.pmtud_blackhole_activated |
激活黑洞检测代码的次数,尝试降低 MSS |
net.inet.tcp.pmtud_blackhole_min_activated |
使用黑洞 MSS 尝试降低 MSS 的次数 |
net.inet.tcp.pmtud_blackhole_failed |
在降低 MSS 后,黑洞未能连接的次数 |
已添加对原子数据报的 IP 标识支持(RFC 6864)。可以通过 sysctl(8) net.inet.ip.rfc6864
启用或禁用此功能,默认启用。(r280971)(由奈飞,Nginx,Inc.赞助)
IPSEC 已更新,以支持在软件和硬件支持的系统上使用 AES 模式(aesni(4))。(r285336)(由 Netgate 赞助)
网络堆栈已更新,以修复 IPv6 On-Link 重定向的处理问题。(r287798)(由 Dell,Inc.赞助)
已添加支持重新根目录到 NFSv4 卷的功能。(r299848)(由 FreeBSD 基金会赞助)
sysctl net.inet.tcp.ecn.enable
mib 已从二进制的开/关控制变更为三种设置模式。(r300240)
值 | 描述 |
---|---|
0 |
完全禁用 ECN。 |
1 |
如果传入连接请求 ECN,则启用 ECN;传出的连接将请求 ECN。 |
2 |
如果传入连接请求 ECN,则启用 ECN;传出的连接不会请求 ECN。 |
Dummynet AQM,作为 ipfw/dummynet 的独立实现,已被导入到基本系统中。(r300779)
已移除未使用的 ioctl SIOCSIFALIFETIME_IN6
。(r301875)
本节涉及 FreeBSD 发布工程过程中的特定变更。
发布工程构建工具已更新,以支持为各种云托管提供商生成虚拟机磁盘映像。(r277458)(由 FreeBSD 基金会赞助)
发布工程构建工具已更新,以使用多线程 xz(1)。默认情况下,xz(1) 线程数设置为可用核心数。(r278926)
发布工程构建工具已更新,以支持构建 FreeBSD/arm64 虚拟机和 U 盘安装镜像。(r281802)(由 FreeBSD 基金会赞助)
发布工程构建工具已更新,以支持为 FreeBSD/arm 平台构建镜像,无需外部实用工具,前提是支持的板卡在 Ports 中有相应的 u-boot
Port。(r282693)(由 FreeBSD 基金会赞助)
与 FreeBSD/amd64 镜像的创建方式一致,现在使用 mkimg(1) 实用工具创建 FreeBSD/i386 U 盘安装镜像。(r283307)(由 FreeBSD 基金会赞助)