FreeBSD 10.1-RELEASE 发行说明(2014 年 11 月 14 日)

摘要

FreeBSD 10.1-RELEASE 的发布说明包含了在 10.1-STABLE 开发线中对 FreeBSD 基本系统所做的更改的总结。本文列出了自上次发布以来发布的相关安全公告,以及 FreeBSD 内核和用户空间的重要更改。此外,还简要介绍了升级的相关事项。

介绍

本文档包含了 FreeBSD 10.1-RELEASE 的发布说明。它介绍了 FreeBSD 中最近添加、修改或删除的功能。同时也提供了一些关于从先前版本升级到本版本的说明。

此版本的 FreeBSD 10.1-RELEASE 是一个发布版本。可以在 http://www.FreeBSD.org/releases/arrow-up-right 或其镜像站点找到。有关获取此版本(或其他版本)发行版的更多信息,请参阅 FreeBSD 手册arrow-up-right 中的 获取 FreeBSDarrow-up-right 附录。

所有用户在安装 FreeBSD 之前,建议先查阅发布差错文档。差错文档会在发布周期结束后或发布后进行更新,包含发现的最新信息。通常,它包含已知的错误、安全公告以及文档更正。FreeBSD 10.1-RELEASE 的最新差错文档可以在 FreeBSD 网站上找到。

新特性

本节介绍了自 10.0-RELEASE 以来,FreeBSD 中最显著的新增或更改功能。

典型的发布说明项目包括记录 10.0-RELEASE 后发布的安全公告、新的驱动程序或硬件支持、新命令或选项、重要的错误修复或第三方软件升级。还可能列出主要 Port/软件包或发布工程实践的更改。显然,发布说明无法列出每个版本之间对 FreeBSD 所做的所有更改;本文档主要关注安全公告、用户可见的更改和主要架构改进。

安全公告

自 FreeBSD 10.0-RELEASE 发布以来,已发布以下安全公告:

公告编号
日期
主题

2013 年 11 月 19 日

OpenSSH AES-GCM 内存损坏漏洞

2014 年 1 月 14 日

bsnmpd 远程拒绝服务漏洞

2014 年 1 月 14 日

ntpd 分布式反射拒绝服务漏洞

2014 年 1 月 14 日

OpenSSL 多个漏洞

2014 年 1 月 14 日

BIND 远程拒绝服务漏洞

2014 年 4 月 8 日

NFS 服务器中的死锁

2014 年 4 月 8 日

OpenSSL 多个漏洞

2014 年 4 月 30 日

修复 devfs 规则未默认应用于 Jail 环境

2014 年 4 月 30 日

修复 TCP 重新组装漏洞

2014 年 4 月 30 日

修复 OpenSSL 使用后释放漏洞

2014 年 5 月 15 日

修复 OpenSSL 空指针解引用漏洞

2014 年 6 月 3 日

修复 sendmail 错误的 close-on-exec 参数处理

2014 年 6 月 3 日

修复 PAM 策略解析中的错误处理

2014 年 6 月 5 日

多个漏洞

2014 年 6 月 24 日

空指针解引用和越界数组访问漏洞

2014 年 6 月 24 日

多个漏洞

2014 年 7 月 8 日

内核内存泄露,存在于控制消息和 SCTP 通知中

2014 年 9 月 9 日

多个漏洞

2014 年 9 月 16 日

TCP 包处理中的拒绝服务漏洞

2014 年 10 月 21 日

远程缓冲区溢出漏洞

2014 年 10 月 21 日

远程拒绝服务漏洞

2014 年 10 月 21 日

沙箱环境中 namei 查找的内存泄露漏洞

2014 年 10 月 21 日

多个漏洞

2014 年 11 月 4 日

内核栈泄露

2014 年 11 月 4 日

远程代码执行漏洞

内核变更

新增了 sysctl(8)arrow-up-right 选项 kern.panic_reboot_wait_time,能控制系统在 panic(9)arrow-up-right 后重启之前的等待时间。 (r260431)arrow-up-right

vt(4)arrow-up-right 驱动已从 FreeBSD-CURRENT 合并。要启用 vt(4)arrow-up-right,请在启动时的 loader(8)arrow-up-right 提示符下输入 set kern.vty=vt,或将 kern.vty=vt 添加到 loader.conf(5)arrow-up-right 中并重启系统。 (r262861)arrow-up-right

已为 PowerPC® 970 系列处理器添加了对 hwpmc(4)arrow-up-right 的支持。 (r263122)arrow-up-right

已为 iicbus(4)arrow-up-right 驱动添加对新版 PowerBooks™ 和 iBooks™ 中的 ADT7460 和 ADT7467 风扇控制器的支持。 (r263197)arrow-up-right

已修复删除 urtwn(4)arrow-up-right 设备时触发的 panic。 (r263256)arrow-up-right

已修复由分离创建字符设备的 USB 设备触发的 usb(4)arrow-up-right 堆栈死锁。 (r263799)arrow-up-right

已为 amdtemp(4)arrow-up-right 添加对 AMD® Family 16h 传感器设备的支持。 (r263869)arrow-up-right

已更新 uslcom(4)arrow-up-right 驱动,支持 26 个新设备。 (r265610)arrow-up-right

已修复一个内核错误,解决了启用 Turbo Boost™ 的 Intel® 处理器上 dev.cpu.0.freq sysctl(8)arrow-up-right 的功能问题。 (r266165)arrow-up-right

已更新 uart(4)arrow-up-right 驱动,支持 Intel® Lynx Point KT AMT 串行端口。 (r266436)arrow-up-right

已更新 radeonkms(4) 驱动,添加 32 位 ioctl(2)arrow-up-right 支持,使 32 位应用程序能够在 64 位系统上运行。 (r266594)arrow-up-right

已修复一个错误,防止 jail(8)arrow-up-right 在执行某些操作时设置正确的 IPv4 源地址,这些操作需要 security.jail.allow_raw_sockets(r266718)arrow-up-right

已更新 hwpmc(4)arrow-up-right 驱动,支持 Atom™ Silvermont 架构的核心事件。 (r266911)arrow-up-right

已更新 oce(4)arrow-up-right 驱动,提供供应商提供的修复,以支持大端字节序和 20GB/s 和 25GB/s 链接速度。 (r268046)arrow-up-right

FreeBSD 虚拟内存子系统已更新,实施了“快速路径”以处理页面错误。 (r270630)arrow-up-right

已更新 asmc(4)arrow-up-right 驱动,支持苹果® Mac Mini 3,1。 (r271069)arrow-up-right

已更新 FreeBSD/powerpc64 默认内核配置 GENERIC64,启用控制台驱动 vt(4)arrow-up-right ,用于索尼 Playstation 3™ 平台。 (r271111)arrow-up-right

FreeBSD/powerpc 已修改驱动 ofwfb,以便在使用 vt(4)arrow-up-right 控制台驱动时提供图形控制台,并与 Port x11-drivers/xf86-video-scfb 兼容。 (r271116)arrow-up-right(由 FreeBSD 基金会赞助)

注意

如果使用 ATI 显卡与 vt(4)arrow-up-right 驱动,则必须更新 x11-servers/xorg-server 包到版本 1.12.4_8 及更高版本。

已从 FreeBSD-CURRENT 合并了若干对 vt(4)arrow-up-right 驱动的性能增强。 (r271128)arrow-up-right(由 FreeBSD 基金会赞助)

已将 powerpc64 架构的默认栈大小(KSTACK_PAGES)从 4 增加到 8(r271153)arrow-up-right

FreeBSD/powerpc ATI 驱动已更新,支持启用和禁用在 Apple® PowerBook™ G4 中的 Radeon 9700 背光。 (r271205)arrow-up-right

已为 drm/i915 驱动添加硬件上下文支持,支持 Mesa 9.2 及更高版本。 (r271816)arrow-up-right

虚拟化支持

作为可加载模块,已为 FreeBSD/i386 添加对 Microsoft® Hyper-V 的支持,但在 GENERIC 内核配置中不可用。 (r259450)arrow-up-right

bhyve(4)arrow-up-right 虚拟化管理程序现在支持通过 ACPI S5 状态执行软关机功能。 (r261090)arrow-up-right

已为 bhyve(4)arrow-up-right 添加对 FreeBSD/i386 客户机的支持。 (r267399)arrow-up-right

已为 bhyve(4)arrow-up-right 添加对虚拟化 XSAVE 的支持,使客户操作系统能够使用 XSAVE 和启用 XSAVE 功能(如 AVX)。 (r267427)arrow-up-right

现在虚拟化管理程序 bhyve(4)arrow-up-right 能从 zfs(8)arrow-up-right 文件系统启动。 (r268932)arrow-up-right

新增了驱动 virtio_random(4)arrow-up-right,允许 FreeBSD 虚拟机从虚拟化管理程序中获取熵。 (r268933)arrow-up-right

bhyve(4)arrow-up-right 虚拟化管理程序已与 FreeBSD-CURRENT 中的版本同步。 (r270159)arrow-up-right

已添加多个增强功能,并修复了若干错误,包括:

  • 当虚拟机以 EPT Misconfiguration 错误退出时,已添加事后调试支持。

  • 虚拟化管理程序的 virtio(4)arrow-up-right API 从 32 位扩展到 64 位。

  • 添加了识别虚拟 CPU 功能的支持。

  • 添加了模拟传统 x86 任务切换的支持。

  • 添加了在基础内核 dmesg(8)arrow-up-right 中列出 VT-x 特性的支持。

  • 添加了对扩展 PCI 配置空间的支持。

ARM 支持

已添加内核配置文件 WANDBOARD(r259355)arrow-up-right

现在可以通过设置 u-boot 环境变量来指定启动设备。如果未指定启动设备,则将使用探测机制。要指定启动设备,请设置 u-boot 环境变量 loaderdev=device(r265067)arrow-up-right

已更新 nexus(4) 驱动,加入了 "Flattened Device Tree" 支持,在大多数情况下替代了 fdtbus(4)arrow-up-right 驱动。 (r266000)arrow-up-right

已从 FreeBSD-CURRENT 合并 gpioiic(4)arrow-up-rightgpioled(4)arrow-up-right 驱动。 (r266105)arrow-up-right

已为内核添加了硬件浮点支持,并在包含所需硬件的所有平台的配置文件中默认启用。

C++ 异常处理现在可以与 GCC 一起工作。

已为内核添加了对 SMP 的支持,并在包含多核 CPU 的所有平台的配置文件中默认启用。

已为以下平台添加支持:

  • CHROMEBOOK (Samsung Exynos 5250)

  • COLIBRI (Freescale Vybrid)

  • COSMIC (Freescale Vybrid)

  • IMX53-QSB (Freescale i.MX53)

  • QUARTZ (Freescale Vybrid)

  • RADXA (Rockchip rk30xx)

  • WANDBOARD (Freescale i.MX6)

为树莓派添加了一款 I2C 驱动。

为 TI 平台(如 BEAGLEBONE 和 PANDABOARD)添加了支持的驱动:

  • PRUSS(可编程实时单元子系统)

  • MBOX(邮箱硬件)

  • SDHCI(新的更快的 MMC/SD 存储驱动)

  • PPS(GPIO/定时器引脚上的每秒脉冲输入)

  • PWM(脉宽调制输出)

  • ADC(模拟到数字转换器)

启动加载器更改

已在 loader(8)arrow-up-right 中添加了内核选择菜单。如果启用了“beastie 菜单”,可以从内核选择菜单中选择要启动的内核。可以在 loader.conf(5)arrow-up-right 中以逗号或空格分隔的列表形式列出其他内核。默认情况下,列出 kernelkernel.old(r262701)arrow-up-right

已重新排列 sys/boot/ 源,将 libstand(3)arrow-up-right 移动到一个目录,表示该库作为 32 位构建。 (r271130)arrow-up-right (由 FreeBSD 基金会赞助)

libstand(3)arrow-up-right 库已更新,以为 FreeBSD/amd64 和 FreeBSD/powerpc64 架构生成 64 位共享库。 (r271135)arrow-up-right (由 FreeBSD 基金会赞助)

已添加对 UEFI 启动的初步支持。 (r271135)arrow-up-right (由 FreeBSD 基金会赞助)

已安装三个新文件到 /boot,来支持 UEFI 启动: (r271136)arrow-up-right (由 FreeBSD 基金会赞助)

  • boot1.efi:UEFI 第一阶段引导文件。

  • boot1.efifat:包含 EFI 系统分区的 FAT 文件系统镜像。

  • loader.efi:第三阶段引导文件。

已为 UEFI 启动加载器添加串行控制台和空控制台支持。 (r271880)arrow-up-right

已为系统启动期间缓存 geli(8)arrow-up-right 密码短语添加支持。当系统配置了多个使用相同密码短语的 GEOM_ELI 提供者时,首次输入的密码短语将被缓存,用于随后的 GEOM_ELI 提供者。如果缓存中的密码短语不正确,则会显示提示,要求为下一个提供者输入密码短语。 (r272006)arrow-up-right

硬件支持

网络接口支持

已为 run(4)arrow-up-right 驱动添加对 Ralink RT5370 和 RT5372 芯片组的支持。 (r259453)arrow-up-right

run(4)arrow-up-right 驱动的固件已更新至版本 0.33。 (r260120)arrow-up-right

已为 run(4)arrow-up-right 驱动添加对 Ralink RT3593 芯片组的支持。 (r261868)arrow-up-right

nve(4)arrow-up-right 驱动现在已被弃用,应改用 nfe(4)arrow-up-right 驱动。 (r261972)arrow-up-right

已添加对 axge(4)arrow-up-right 驱动的支持。该驱动支持 ASIX AX88178A 和 AX88179 USB 以太网适配器。AX88178A 支持 USB 2.0,AX88179 支持 USB 2.0 和 3.0。 (r262137)arrow-up-right

已从 OpenBSD 导入驱动 urndis(4)arrow-up-right(r262363)arrow-up-right

已为 vmx(4)arrow-up-right 驱动添加了对多个发送器/接收器队列的支持。 (r264866)arrow-up-right

注意: FreeBSD 客户操作系统必须启用 MSIX,才能使用多个队列。

已为 urtwn(4)arrow-up-right 驱动添加对 ASUS USB-N10 Nano 无线网卡的支持。 (r265345)arrow-up-right

已为 re(4)arrow-up-right 驱动禁用了对 RTL8168C 和 RTL8168CP 芯片组的 TCP 和 UDP 帧的传输校验和卸载支持。这是因为报告称带有 IP 选项的 UDP 数据报生成了损坏的帧。 (r266212)arrow-up-right

已为 urtwn(4)arrow-up-right 驱动添加了对 Realtek RTL8188EUS 和 RTL8188ETV 芯片组的初步支持。 (r266578)arrow-up-right

已修复 cxgbe(4)arrow-up-right 驱动中快速接收缓冲区回收路径的一个 bug。 (r267694)arrow-up-right

T4 和 T5 卡的捆绑 cxgbe(4)arrow-up-right 固件已更新至版本 1.11.27.0。 (r267849)arrow-up-right(由 Chelsio 贡献/提供)

em(4)arrow-up-right 驱动已更新至版本 7.4.2。 (r269196)arrow-up-right

ixgbe(4)arrow-up-right 可调参数已重命名,以匹配其 sysctl(8)arrow-up-right 对应项: (r269975)arrow-up-right

旧名称
新名称

hw.ixgbe.enable_aim

hw.ix.enable_aim

hw.ixgbe.max_interrupt_rate

hw.ix.max_interrupt_rate

hw.ixgbe.rx_process_limit

hw.ix.rx_process_limit

hw.ixgbe.tx_process_limit

hw.ix.tx_process_limit

hw.ixgbe.enable_msix

hw.ix.enable_msix

hw.ixgbe.num_queues

hw.ix.num_queues

hw.ixgbe.txd

hw.ix.txd

hw.ixgbe.rxd

hw.ix.rxd

hw.ixgbe.unsupported_sfp

hw.ix.unsupported_sfp

如果在升级到 FreeBSD 10.1-RELEASE 之前使用了旧的可调参数,确保更新了 loader.conf(5)arrow-up-right

已从 FreeBSD-CURRENT 合并 if_nf10bmac(4)arrow-up-right 驱动,以支持 NetFPGA-10G 嵌入式 CPU 以太网核心。 (r270061)arrow-up-right

cxgbe(4)arrow-up-right 驱动已更新,以支持 T5 10G/40G 卡的 netmap(4)arrow-up-right(r270297)arrow-up-right

vtnet(4)arrow-up-right 驱动已更新,以支持 netmap(4)arrow-up-right(r270509)arrow-up-right

网络协议

已为 IPv4 和 IPv6 栈添加对 UDP-Lite 协议(RFC 3828)的支持。 (r265946)arrow-up-right

已修复 sctp(4)arrow-up-right 中的一个 bug,该 bug 允许两个监听套接字绑定到相同端口。 (r267771)arrow-up-right

NFS 服务器的内核 RPC 代码进行了多项优化,显著提升了性能和对对称多处理(SMP)的可扩展性。(由 iXsystems 赞助)

iSCSI 发起程序已更新,支持在 iSCSI 设备配置了多个 IP 地址并跨不同网络接口时的重定向处理。此前,连接到此类 iSCSI 设备的客户端可能需要额外的客户端配置。 (r269065)arrow-up-right(由 FreeBSD 基金会 赞助)

新增了一个 sysctl(8)arrow-up-right 参数 kern.iscsi.fail_on_disconnection,允许 iSCSI 客户端在连接丢失时移除附加的磁盘设备,之前会一直停止 I/O,直到连接恢复。 (r265523)arrow-up-right(由 FreeBSD 基金会 赞助)

已优化 iSCSI 传输代码,以合并 PDU 并避免锁争用。 (r265524)arrow-up-right(由 FreeBSD 基金会 赞助)

对 iSCSI 子系统进行了多项性能优化,包括推迟唤醒,直到接收到足够的数据进行文件读写,从而减少了 CPU 使用率并提高了大规模 I/O 工作负载下的吞吐量性能。 (r265524)arrow-up-right(由 iXsystems 赞助)

已为 iSCSI ctld(8)arrow-up-right 守护进程添加基于主机名和 IP 的访问限制支持。 (r263720)arrow-up-right(由 FreeBSD 基金会 赞助)

ctld(8)arrow-up-right 守护进程已更新,允许覆盖“默认”portal-group 配置。 (r263725)arrow-up-right(由 FreeBSD 基金会 赞助)

ctld(8)arrow-up-right 守护进程现在包括新的 auth-group,名为 "default",默认设置为 deny,并可以覆盖此设置。 (r263726)arrow-up-right(由 FreeBSD 基金会 赞助)

urtwn(4)arrow-up-right 驱动已更新,以支持 ASUS USB-AC51 无线网卡。 (r270514)arrow-up-right

已从 FreeBSD-CURRENT 合并 Intel® XL710 以太网控制器驱动 ixlv(4)(r270631)arrow-up-right

磁盘与存储

geom(4)arrow-up-right 子系统已更新,支持 I/O 直接调度。当满足安全性要求时,它可以避免将 I/O 请求传递给 GEOM 的 g_up/g_down 线程,直接在调用者上下文中执行,从而避免了在 g_up/g_down 线程中的 CPU 瓶颈,并减少了每次 I/O 的多个上下文切换。 (r260385)arrow-up-right(由 iXsystems 赞助)

geom(4)arrow-up-right RAID 驱动程序已更新,支持未映射的 I/O。 (r260385)arrow-up-right(由 iXsystems 赞助)

cam(4)arrow-up-right 子系统已更新,支持更细粒度的锁定、直接调度和多队列,结合 geom(4)arrow-up-right 的直接调度,减少了锁争用并提升了 SCSI/ATA 栈的 SMP 可扩展性。 (r260387)arrow-up-right(由 iXsystems 赞助)

geom(8)arrow-up-right GEOM_MULTIPATH 类已更新,支持自动在线分区调整大小。 (r260478)arrow-up-right

virtio_blk(4)arrow-up-right 驱动程序已更新,支持未映射的 I/O。 (r260857)arrow-up-right

virtio_scsi(4)arrow-up-right 驱动程序已更新,支持未映射的 I/O。 (r260858)arrow-up-right

已从 cd(4)arrow-up-right 驱动程序中移除对基于 LUN 的 CD 变换器的支持。 (r264522)arrow-up-right

已为 zfs(8)arrow-up-right zvol 卷添加对 BIO_DELETE 的支持。 (r264732)arrow-up-right

已为 ciss(4)arrow-up-right 添加对第 9 代 HP 主机总线适配器卡的支持。 (r264734)arrow-up-right

已添加 mpr(4)arrow-up-right 设备,提供对 LSI Fusion-MPT 3 12Gb SCSI/SATA 控制器的支持。 (r265388)arrow-up-right(由 LSI 赞助)

新增了 zvol 属性 volmodesysctl(8)arrow-up-right vfs.zfs.vol.mode,允许在三种不同的方式间切换 zvol 的暴露方式:geomdevnone(r265678)arrow-up-right

已添加 mrsas(4)arrow-up-right 驱动程序,提供对 LSI MegaRAID SAS 控制器的支持。默认情况下,mfi(4)arrow-up-right 驱动程序将附加到控制器。要启用 mrsas(4)arrow-up-right,请在 /boot/loader.conf 中添加 hw.mfi.mrsas_enable=1,以关闭 mfi(4)arrow-up-right 设备探测。 (r265922)arrow-up-right(由 LSI 赞助)

注意

目前,mfiutil(8)arrow-up-right 工具以及 FreeBSD 版本的 MegaCLI 和 StorCli 与 mrsas(4)arrow-up-right 不兼容。

已修正 geom(8)arrow-up-right GEOM_DISK 类中 BIO_FLUSH 操作的计账问题。 (r266608)arrow-up-right

gstat(8)arrow-up-right 工具现在增加选项 -o,用于显示“其他”操作,例如 BIO_FLUSH(r266610)arrow-up-right

mfi(4)arrow-up-right 驱动程序已更新,支持未映射的 I/O。 (r267084)arrow-up-right

hpt27xx(4)arrow-up-right 驱动程序已更新,包含多个供应商提供的 bug 修复。 (r267457)arrow-up-right

已为 xen(4)arrow-up-right blkfront 驱动程序添加对未映射的 I/O 的支持。 (r270130)arrow-up-right(由 Citrix Systems R&D 赞助)

geom(8)arrow-up-right label 类现在能够感知调整大小后的分区。解决了一个问题:其中 geom resize 会调整分区大小,但 /dev/gptid/ 中的标签提供者未被调整大小。 (r259328)arrow-up-right(由 FreeBSD 基金会 赞助)

gmirror(8)arrow-up-right 工具现在增加了命令 resize,使得在所有组件被替换后,调整镜像大小变得更加容易。 (r260502)arrow-up-right

已为 mfi(4)arrow-up-right 驱动程序添加对 MegaRAID Fury 卡的支持。 (r262967)arrow-up-right

aacraid(4)arrow-up-right 驱动程序已更新至版本 3.2.5。(r263024)arrow-up-right

现在可以将 GEOM_VINUM 选项直接构建到内核中,或者作为 kldload(8)arrow-up-right 加载模块来使用。(r265536)arrow-up-right

geom(8)arrow-up-right 中的 GEOM_PART 类已更新以支持自动分区调整大小。分区大小的更改在运行 gpart commit 之前不会保存到磁盘,而在保存之前,可以使用 gpart undo 进行还原。(r265912)arrow-up-right

默认情况下,会构建 geom_uncompress(4)arrow-up-right 模块,它类似于 geom_uzip(4)arrow-up-right,支持压缩的只读磁盘映像。(r266220)arrow-up-right

gpart(8)arrow-up-right 添加了对 disklabel64 分区方案的支持。(r268091)arrow-up-right

一个新的 sysctl(8)arrow-up-rightloader(8)arrow-up-right 可调参数 kern.geom.part.mbr.enforce_chs 已添加到 geom(8)arrow-up-rightMBR 分区类中。当设置为非零值时,GEOM_PART_MBR 将自动重新计算用户指定的偏移量和大小,以与磁盘几何结构对齐。(r270552)arrow-up-right

CAM Target Layer (CTL) 进行了多项改进:(由 iXsystems 赞助)

  • 增加了对 UNMAPWRITE SAMECOMPARE AND WRITEXCOPY 和其他一些 SCSI 命令的支持,以支持 VMware VAAI 和 Microsoft ODX 存储加速。

  • 通过支持每个命令的多次数据移动,移除了 READ/WRITE 大小限制。(r265642)arrow-up-right

  • 更精细的按 LUN 锁定和多个工作线程,提升了多处理器(SMP)扩展能力。(r268556)arrow-up-right

  • 通过禁用一些从未使用过的功能,大幅降低了内存消耗。(r269297)arrow-up-right

  • SCSI 端口的最大数量从 32 增加到了 128。(r269298)arrow-up-right

  • 改进了 zvol 集成以提升性能。(r269429)arrow-up-right

已更新驱动程序 hptnr(4)arrow-up-right 至版本 1.0.1。(r270810)arrow-up-right(由 HighPoint 提供)

已添加驱动程序 mrsas(4)arrow-up-right 到 amd64 和 i386 架构的 GENERIC 内核配置中。(r271234)arrow-up-right

文件系统

已重新启用 sysctl(8)arrow-up-right vfs.zfs.zio.use_uma。在多 CPU 且内存充足的机器上,这可以轻松将 zfs(8)arrow-up-right 性能提升一倍或将 CPU 使用率降低一半。此前由于内存和 KVA 耗尽问题被禁用,但这些问题已通过 VM 子系统的多项改进得到解决。(r260338)arrow-up-right

fsck_ffs(8)arrow-up-right 工具新增了 -R 参数。启用该参数时,当检测到过多关键错误时,fsck_ffs(8)arrow-up-right 将自动重启自身。(r260178)arrow-up-right(由奈飞提供)

zfs(8)arrow-up-right 文件系统已更新以支持“书签”功能。有关详细信息,请参阅 zfs(8)arrow-up-right(r263407)arrow-up-right

zfs(8)arrow-up-right 文件系统已更新,允许在创建新的顶级虚拟设备(vdevs)时调整最小“ashift”值。例如,在“高级格式”驱动器上创建 zpool(8)arrow-up-right 时,可通过设置 sysctl(8)arrow-up-right vfs.zfs.min_auto_ashift 来配置最小 ashift 值。(r266122)arrow-up-right

已从 OpenSolaris 导入 libzfs 的线程池 API 并适配到了 FreeBSD。此更改支持并行磁盘扫描,可以在某些工作负载中减少 zpool(8)arrow-up-right 的整体导入时间。(r266612)arrow-up-right

restore(8)arrow-up-right 工具已更新,防止在将 UFS 文件系统转储恢复到 ZFS 文件系统时发生断言失败。更新内容为使用 1024 的倍数作为块大小写入恢复的文件。(r269651)arrow-up-right

zfs(8)arrow-up-right 文件系统添加了两个 sysctl(8)arrow-up-right(r269774)arrow-up-right

  • vfs.zfs.mg_fragmentation_threshold: 定义元磁盘组大小的百分比,超过该阈值则不可分配,除非该磁盘类中的所有元磁盘组都超过该阈值。

  • vfs.zfs.metaslab.fragmentation_threshold: 定义元磁盘的最大碎片化百分比以保持其活动状态。

已增加默认的 zfs(8)arrow-up-right ARC 哈希表大小,并新增了 loader(8)arrow-up-right 可调参数 vfs.zfs.arc_average_blocksize。之前的哈希表可能太小,导致哈希链过长,从而限制了缓存读取的性能。新的可调参数 vfs.zfs.arc_average_blocksize 可覆盖默认块大小。之前的默认值为 65536,新可调参数的默认值为 8192(r269846)arrow-up-right

已更新快速文件系统(FFS)以支持多线程软更新。此前,软更新由单线程处理,现在每个 FFS 挂载点拥有一个线程。(r270157)arrow-up-right

已从 FreeBSD-CURRENT 合并新的文件系统自动挂载功能 autofs(5)arrow-up-right 。新的 autofs(5)arrow-up-right 类似于其他类 UNIX® 操作系统(如 OS X™ 和 Solaris™)中的自动挂载功能。autofs(5)arrow-up-right 使用与 Sun™ 兼容的 auto_master(5)arrow-up-right 配置文件,并通过用户空间工具 automount(8)arrow-up-right 以及守护进程 automountd(8)arrow-up-rightautounmountd(8)arrow-up-right 进行管理。(r270892)arrow-up-right(由 FreeBSD 基金会赞助)

用户态变更

camcontrol(8)arrow-up-right 添加了一个新选项 -b,用于输出现有的总线及其父设备。(r260177)arrow-up-right(由奈飞赞助)

newsyslog(8)arrow-up-right 实用程序已更新,可根据实际文件大小而非磁盘上的块数旋转文件。这一更改与 newsyslog.conf(5)arrow-up-right 文档中的描述相匹配。(r262075)arrow-up-right

rctl(8)arrow-up-right 配置文件的位置现在可以通过 rc.conf(5)arrow-up-right 覆盖。若需使用非默认位置,可在 rc.conf(5)arrow-up-right 中设置 rctl_rules 指向配置文件的位置。(r262384)arrow-up-right

ATF 测试套件已更新至 0.20 版本。该测试套件在 FreeBSD 10.1 中默认禁用,可以通过在 src.conf(5)arrow-up-right 中添加 WITH_TESTS=yes 启用。(r262855)arrow-up-right

libucl(统一配置库)已从 FreeBSD-CURRENT 合并。(r263019)arrow-up-right

已与 FreeBSD-CURRENT 版本同步 pkg(7)arrow-up-right 启动程序。(r263020)arrow-up-right

zfs(8)arrow-up-right 用户态实用程序增加了 snapshot 的别名,支持 zfs list -t snapzfs snap(r263403)arrow-up-right

zfs(8)arrow-up-right 用户态实用程序在 zfs list 中新增了 -p 选项,可输出可解析的格式。(r263405)arrow-up-right

Blowfish 密码格式的实现已更新,新增对 $2b$ 格式的支持,允许使用超过 256 个字符的密码。(r263783)arrow-up-right

iconv(3)arrow-up-right 库已更新以匹配 NetBSD,修复了若干问题。(r264497)arrow-up-right

date(1)arrow-up-right 工具新增 -R 选项,可按 RFC 2822 规定的格式打印日期和时间。(r265265)arrow-up-right

bc(1)arrow-up-right 工具已更新至 1.1 版本,与 OpenBSD 版本同步。(r265533)arrow-up-right

pmcstat(8)arrow-up-right 工具新增了 -a 选项,指定后可在采样点生成完整的堆栈跟踪。(r265604)arrow-up-right(由奈飞提供)

netstat(8)arrow-up-rightroute(8)arrow-up-right 工具新增了地址类型的简写形式,分别是 -4-6,对应 -f inet-f inet6(r265701)arrow-up-right

crypt(3)arrow-up-right 库现在默认使用 SHA512 进行密码哈希。(r265879)arrow-up-right

gvinum(8)arrow-up-right 工具更新了强制重置配置的 -f 选项,并修复了阻止 -f 正确创建配置的错误。(r266014)arrow-up-right

login.conf(5)arrow-up-right 文件优先级已提高,优先于 shell 特定的环境文件。具体来说,从 /usr/share/skel/dot.profile 中注释掉变量 PATHBLOCKSIZE,从 /usr/share/skel/dot.cshrc 中注释掉 pathBLOCKSIZEumask(r266029)arrow-up-right

binmiscctl(8)arrow-up-right 工具及相关镜像激活功能已从 FreeBSD-CURRENT 合并。(r266272)arrow-up-right

ps(1)arrow-up-right 工具新增 -J 选项,可通过 jail(8)arrow-up-right 的 ID 和名称过滤输出。参数 0 可用于 -J,仅列出主机系统运行的进程。(r266279)arrow-up-right

top(1)arrow-up-right 工具也更新支持通过 jail(8)arrow-up-right 的 ID 和名称过滤,与 ps(1)arrow-up-right 更新相对应。(r266280)arrow-up-right

gstat(8)arrow-up-right 工具新增 -o 选项,启用后可显示如 BIO_FLUSH 的操作统计信息。(r266610)arrow-up-right

fetch(3)arrow-up-right 库已更新,优先从 /usr/local/etc/ssl/ 中查找根 SSL 证书,其次才是 /etc/ssl/(r266632)arrow-up-right

clang(1)arrow-up-right/LLVM 套件已更新至版本 3.4.1。(r266715)arrow-up-right

Blowfish 密码格式的默认值已更改为 $2b$。(r266816)arrow-up-right

hwpmc(4)arrow-up-right 收集的数据量已更新,以支持现代处理器和更多可用内存。(r266888)arrow-up-right

pmcstat(8)arrow-up-right 工具新增了参数 -l,可在指定的秒数后结束事件收集。(r266890)arrow-up-right

mergemaster(8)arrow-up-right 工具已更新,以避免在没有可比较内容时输出信息 /var/tmp/temproot disappeared(r266953)arrow-up-right

FreeBSD 安装器 bsdinstall(8)arrow-up-right 已更新,支持在完整 zfs(8)arrow-up-right 文件系统上安装时添加可选的 geli(8)arrow-up-right 加密或 gmirror(8)arrow-up-right 镜像的交换设备。此外,父 zfs(8)arrow-up-right 数据集现已默认启用 lz4 压缩。(r267056)arrow-up-right

默认的 newsyslog.conf(5)arrow-up-right 文件现在默认包含目录 /etc/newsyslog.conf.d//usr/local/etc/newsyslog.conf.d/ 中的文件,供 newsyslog(8)arrow-up-right 使用。(r267113)arrow-up-right

realpath(1)arrow-up-right 工具已更新,对于路径组件 ... 不是目录的情况(例如 /dev/null/./dev/null/..),将返回 ENOTDIR(r267161)arrow-up-right

/etc/ttys 文件新增了一个参数 onifconsole。当设备为活动内核控制台时,系统将通过串口控制台提供登录提示,否则此参数等效于 off(r267236)arrow-up-right

bhyve(8)arrow-up-right 的遗留 PCI 设备支持已被移除。(r267341)arrow-up-right

bhyve(8)arrow-up-right 工具新增了 SMBIOS 支持,同时添加了一个 -U 参数,可在系统信息结构中指定来宾的 UUID。(r267450)arrow-up-right

FreeBSD 项目已从 GNATS 缺陷跟踪系统迁移至 Bugzilla。工具 send-pr(1)arrow-up-right(用于提交问题报告)已被替换为一个提示使用 Bugzilla 网页界面的脚本。(r267734)arrow-up-right

patch(1)arrow-up-right 工具新增参数 --dry-run,与 --check-C 等效。(r267747)arrow-up-right

bsdgrep(1)arrow-up-right 工具中一个在特定条件下阻止模式匹配的错误已被修复。(r267878)arrow-up-right

procstat(1)arrow-up-right 工具新增了两个参数:-r-H。当指定 -r 时,工具将打印进程的当前资源使用情况。当指定 -H 时,工具将打印线程而非进程的信息。(r267979)arrow-up-right

注意

-H 参数当前仅与 -r 一起使用,以显示单个线程的资源使用情况,而非整个进程。

sed(1)arrow-up-right 工具新增了 -u 参数,当指定该参数时,将启用无缓冲输出。(r268019)arrow-up-right

mkimg(1)arrow-up-right 工具已从 FreeBSD-CURRENT 合并。(r268161)arrow-up-right

camcontrol(8)arrow-up-right 工具新增了命令 persist,用于发送 SCSI PERSISTENT RESERVE INSCSI PERSISTENT RESERVE OUT(r268700)arrow-up-right(由 Spectra Logic 赞助)

gstat(8)arrow-up-right 工具新增了 -p 参数,当指定该参数时,仅显示物理提供者。(r268791)arrow-up-right

kldstat(8)arrow-up-right 工具已更新,允许在指定 -n module.ko 时使用 -q 参数。(r268903)arrow-up-right

mkimg(1)arrow-up-right 工具已更新,现支持 VHD 和 VMDK 格式的固定和动态分配镜像。(r269177)arrow-up-right

random(4)arrow-up-right 熵收集脚本 /usr/libexec/save-entropyjail(8)arrow-up-right 环境中不再运行。(r269220)arrow-up-right

已与 FreeBSD-CURRENT 同步 bhyve(8)arrow-up-right 的包装脚本 /usr/share/examples/bhyve/vmrun.sh(r269397)arrow-up-right

此更新包括以下内容:

已从 FreeBSD-CURRENT 合并 nfsd(8)arrow-up-right 服务器的更新,支持 RFC5661 的 4.1 版本。(r269398)arrow-up-right

ping6(8)arrow-up-right 工具已更新,当达到发送数据包的最大数量时,将重置 itimer。此更新防止 ping6(8)arrow-up-right 在间隔设置为较小值且数据包数量较少时意外退出。(r269800)arrow-up-right

jail(8)arrow-up-right 工具现支持为 ip4.addrip6.addr 参数提供额外的 ifconfig(8)arrow-up-right 参数。此更改允许在 jail(8)arrow-up-right 中使用 carp(4)arrow-up-right 接口。(r269805)arrow-up-right

支持生成和编译 USDT DTrace 探针的功能已得到改进。DTrace USDT 文件现在类似于 lex(1)arrow-up-rightyacc(1)arrow-up-right 文件进行处理,意味着在构建过程中处理 D 文件的支持已集成到 SRCS make(1)arrow-up-right 环境变量中。(r269946)arrow-up-right

iscsictl(8)arrow-up-right 工具已更新,新增了 -M 参数,允许在不需要移除并重新添加会话的情况下修改 iSCSI 会话参数。(r269968)arrow-up-right

mount_nfs(8)arrow-up-right 工具现已支持通过 -o 参数指定 NFS 版本为 key=value 形式的参数。例如,要指定 NFS 版本 4,可使用语法 -o vers=4(r270043)arrow-up-right

devd(8)arrow-up-right 客户端套接字类型已更改为 SOCK_SEQPACKET,提供顺序数据包支持。(r270242)arrow-up-right(由 Spectra Logic 赞助)

pam_group(8)arrow-up-right 模块新增了对 account 功能的支持。(r270401)arrow-up-right

pathchk(1)arrow-up-right 工具已更新,确保将大于或等于 128 的字节视为不可移植。(r270890)arrow-up-right

zdb(8)arrow-up-right 工具现已包含在 /rescue 环境的应用程序集中,使得在 /usr 不可用时仍可检查 zfs(8)arrow-up-right 文件系统。(r270997)arrow-up-right(由 FreeNAS 提供/贡献)

已从 illumos™ 和 Apple® 合并多项 libc 改进,提供了更好的国际化支持和 POSIX® 合规性。

mkimg(1)arrow-up-right 工具新增了对创建空分区的支持。(r271967)arrow-up-right

mkimg(1)arrow-up-right 工具新增了对 QCOW 和 QCOW2 磁盘镜像格式的支持。(r272819)arrow-up-right

mkimg(1)arrow-up-right 工具新增了三个用于输出自身信息的选项:(r273098)arrow-up-right

选项
输出

--version

mkimg(1)arrow-up-right 工具的当前版本

--formats

mkimg(1)arrow-up-right 支持的磁盘镜像文件格式

--schemes

mkimg(1)arrow-up-right 支持的分区方案

/etc/rc.d 脚本

rc(8)arrow-up-right 脚本 network.subr 已更新,放宽了按数字顺序列出网络别名的要求。之前,如果未定义 _alias1,则不会创建网络别名 _alias2(r264438)arrow-up-right

service(8)arrow-up-right 工具已更新,会在遍历 rc.d(8)arrow-up-right 目录之前检查该目录是否存在。(r268098)arrow-up-right

修复了 FreeBSD 10.0-RELEASE 中引入的一个回归问题,该问题会妨碍通过 jail(8)arrow-up-right rc(8)arrow-up-right 启动脚本正确分配 IPv6。(r259141)arrow-up-right

已移除 rc(8)arrow-up-right 脚本中要求 mdconfig(8)arrow-up-right 设备在 rc.conf(5)arrow-up-right 中按顺序列出的限制。(r264438)arrow-up-right

sshd(8)arrow-up-right rc.d(8)arrow-up-right 启动脚本现在会在调用 ssh_keygen_alg() 时生成 ED25519 sshd(8)arrow-up-right 主机密钥(如果密钥不存在)。(r262566)arrow-up-right

支持 vt(4)arrow-up-right 键盘映射已添加到 syscons rc.d(8)arrow-up-right 启动脚本。(r271095)arrow-up-right

目录 /etc/rc.conf.d/service/ 中子目录的支持已添加到 rc.d(8)arrow-up-right。这能为服务(如 netif)创建单独的配置文件,例如,每个网络接口可有独立的配置文件。(r271260)arrow-up-right

已更新默认的 rc.conf(5)arrow-up-right /etc/defaults/rc.conf,默认将 /usr/lib32/compat 包含在 ld-elf32.so.1 搜索路径中。(r272078)arrow-up-right

/etc/periodic 脚本

每日 periodic(8)arrow-up-right 脚本 110.clean-tmps 已更新,在清理 /tmp 中的文件时避免跨越文件系统挂载边界。(r272430)arrow-up-right

第三方软件

xz(1)arrow-up-right 工具已更新至 5.0.5 之后的一个快照版本。(r263285)arrow-up-right

OpenSSH 已更新至版本 6.6p1。(r264377)arrow-up-right

nc(1)arrow-up-right 工具已更新以匹配 OpenBSD 5.5 的版本。(r264911)arrow-up-right

Sendmail 已更新至版本 8.14.9。(r266692)arrow-up-right

file(1)arrow-up-right 工具和 libmagic(3)arrow-up-right 库已更新至版本 5.19。(r268515)arrow-up-right

byacc(1)arrow-up-right 解析器已更新至版本 20140422。(r268899)arrow-up-right

lldb(1)arrow-up-right 调试库已更新至 r202189 快照。(r269024)arrow-up-right(由美国国防高级研究计划局和美国空军研究实验室赞助)

缓存解析器 unbound(8)arrow-up-right 及其 ldns 已更新至版本 1.4.22。(r269257)arrow-up-right

FreeBSD 基本系统中包含的“精简”版本 Subversion 及其依赖项已更新:(r269847)arrow-up-right

  • apr 已更新至版本 1.5.1。

  • apr-util 已更新至版本 1.5.3。

  • serf 已更新至版本 1.3.7。

  • svnlite 已更新至版本 1.8.10。

nvi(1)arrow-up-right 编辑器已更新至版本 2.1.2-c80f493b038。(r270026)arrow-up-right

fparseln(3)arrow-up-right 库已更新至版本 1.7。(r270031)arrow-up-right

已从 FreeBSD 基本系统中移除 lukemftpd FTP 服务器。(r270415)arrow-up-right

时区数据库已更新至版本 tzdata2014f。(r270817)arrow-up-right

OpenPAM 已更新至 Ourouparia (20140912)。(r271947)arrow-up-right

OpenSSL 已更新至版本 1.0.1j。(r273399)arrow-up-right

Ports/软件包基础设施

pkg(8)arrow-up-right 软件包管理工具已更新至版本 1.3.8。

发布工程与集成

services.mkdb(8)arrow-up-right 工具已更新,新增字节序意识功能,使得无论是本地还是交叉编译的版本,都可以在发布构建过程中创建 services.db 数据库。(r263028)arrow-up-right

release/ 脚本已更新,支持为 FreeBSD/amd64 架构生成支持 UEFI 和 BIOS 的 CD-ROM ISO 文件,以及内存棒镜像。(r271470)arrow-up-right(由 FreeBSD 基金会赞助)

release/scripts/pkg-stage.sh 脚本已更新,在 DVD 安装程序的 packages/ 目录结构中添加了指向光盘版 pkg(8)arrow-up-right 的符号链接。这使得 pkg(7)arrow-up-right 引导工具能够正确定位 DVD 中的 Latest/pkg.txz 包,而无需网络连接或显式提供安装介质上的路径。(r271943)arrow-up-right(由 FreeBSD 基金会赞助)

FreeBSD 发布工程构建工具已更新,支持通过 mkimg(1)arrow-up-right 在发布构建过程中生成虚拟机磁盘镜像。目前支持的磁盘镜像格式包括 QCOW2、VHD、VMDK 和原始格式。有关更多信息,请参阅 release(7)arrow-up-right(r273101)arrow-up-right(由 FreeBSD 基金会赞助)

FreeBSD 发布工程构建工具已更新,支持为 Microsoft® Azure 云托管平台生成 FreeBSD 虚拟机磁盘镜像。此功能未直接集成至默认的 release make(1)arrow-up-right 目标中,但可通过直接指定 vm-azure 目标启用。(r273199)arrow-up-right(由 FreeBSD 基金会赞助)

从旧版 FreeBSD 升级

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

可以从基于源码的升级(通过重新编译 FreeBSD 基本系统的源码进行的升级),具体操作请参阅 /usr/src/UPDATING 文件中的说明。

重要提示:

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

最后更新于