FreeBSD 4.8 RELEASE i386 发行公告(2003 年 4 月 3 日)

FreeBSD 项目

版权 © 2000, 2001, 2002, 2003 FreeBSD 文档项目版权所有

$FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.22.2.346 2003/03/22 00:12:50 bmah Exp $

FreeBSD 4.8-RELEASE 的发布说明包含自 4.7-RELEASE 以来对 FreeBSD 基本系统所做变更的摘要。列出了内核和用户空间的变更,以及自上次发布以来发布的相关安全通告。还提供了一些关于升级的简要说明。

1 引言

本文档包含 FreeBSD 4.8-RELEASE 在 i386 硬件平台上的发布说明。它介绍了自 4.7-RELEASE 以来 FreeBSD 新增(或变更)的新功能。它还提供了关于从以前版本的 FreeBSD 升级的一些说明。

此版本的 FreeBSD 4.8-RELEASE 是一个发布版本。可以在 ftp://ftp.FreeBSD.org/ 或其任何镜像站点找到。有关获取此版本(或其他版本)FreeBSD 发行版的更多信息,请参阅获取 FreeBSDFreeBSD 手册中的附录。

2 新特性

本节介绍了自 4.7-RELEASE 以来 FreeBSD 中最明显的新特性或变更。典型的发布说明项目包括新驱动程序或硬件支持、新命令或选项、主要 bug 修复或第三方软件升级。还列出了自 4.7-RELEASE 以来发布的基本系统的安全通告。

2.1 内核变更

从 OpenBSD 导入了一个新的内核加密框架(参见 crypto(4)crypto(9))。它提供了一个一致的接口,用于内核使用加密算法的硬件和软件实现,以及为用户模式应用程序访问加密硬件。提供了硬件设备驱动程序来支持基于 hifn 的卡( hifn(4))和基于 Broadcom 的卡( ubsec(4))。

已为 FireWire 设备(参见 firewire(4))新增初步支持。

新增对 CanBe 电源管理控制器的支持。

新增驱动程序 ubsa ,以支持 Belkin F5U103(及兼容)USB 转串口适配器。

已新增 uftdi(4) 驱动程序,以支持 FTDI USB 转串口设备。

2.1.1 处理器/主板支持

FreeBSD 现在对超线程(HTT)提供了基本支持。具有 HTT 内核选项的 SMP 内核将检测并启动 HTT 支持机器上的逻辑处理器。为了进程调度的目的,逻辑处理器将被视为额外的物理处理器。

2.1.2 启动加载程序

PC98 启动加载程序现在支持从 SCSI MO 媒体启动。

2.1.3 网络接口支持

驱动程序 cm 现在支持 IPX。

驱动程序 nge(4) 现在支持网络设备 polling(4)

2.1.4 网络协议

现在可以通过内核选项 FAST_IPSEC,允许 IPsec 实现使用内核 crypto(4) 框架,并支持硬件加速加密。更多信息可以在 fast_ipsec(4) 手册页中找到。

注意:

选项 FAST_IPSECIPSEC 是互斥的。

注意:

目前,选项 FAST_IPSEC 与选项 IPv6/INET6 不兼容。

已新增驱动程序 gre(4) ,支持使用 GRE(RFC 1701)或最小 IP 封装(用于移动 IP,RFC 2004)来封装 IP 数据包。

修复了 TCP NewReno 中的一个 bug,该 bug 导致在启用 NewReno 的情况下过早退出快速恢复。

IP 数据包重组代码在接收大量数据包碎片时表现得更加稳定(它被设计得更能抵抗基于碎片的拒绝服务攻击)。

2.1.5 磁盘和存储

ata(4) 驱动程序现在支持通过 CAM 层和驱动程序(cd(4)da(4)st(4),和 pass(4)) 访问 ATA 设备作为 SCSI 设备。此功能需要在内核配置中使用 atapicam 设备。更多信息可以在 atapicam(4) 中找到。

由于其许可条款的问题,已删除驱动程序 matcd(4) 。这些问题正在处理之中,可能在未来的 FreeBSD 版本中重新出现该驱动程序。(实际上在 4.7-RELEASE 中已删除,但发布说明未提及。)

targ(4) 驱动程序已被重写,并且在 /usr/share/examples/scsi_target 中新增一个新的用户模式,用于模拟直接访问设备。

已新增驱动程序 trm ,以支持使用 Tekram TRM-S1040 SCSI 芯片组的 SCSI 适配器。

2.1.6 文件系统

2.1.7 PCCARD 支持

2.1.8 多媒体支持

2.1.9 第三方软件

IPFilter 已更新到 3.4.31。

2.2 安全公告

已修复 kadmind(8) 和 k5admin 中的缓冲区溢出漏洞。更多详细信息请参阅安全公告 FreeBSD-SA-02:40

已修复多个 BIND 漏洞,详见 FreeBSD-SA-02:43

修复了 fpathconf(2) 系统调用中的文件描述符泄漏漏洞,该漏洞可能导致本地用户使系统崩溃或提升权限。更多细节请参见安全公告 FreeBSD-SA-02:44

已修复 CVS 中的一个远程可利用漏洞,通过导入版本 1.11.5 来解决。更多细节请参见安全公告 FreeBSD-SA-03:01

已通过升级至 OpenSSL 0.9.7 来防止对 OpenSSL 的基于时间的攻击,该攻击可能允许非常强大的攻击者在某些情况下访问明文。更多细节请参阅安全公告 FreeBSD-SA-03:02

已改进 syncookies 功能的安全性和性能,以降低攻击者伪造连接的可能性。更多细节请参见安全公告 FreeBSD-SA-03:03

已通过将 sendmail 更新到版本 8.12.8 来修复一个远程可利用的缓冲区溢出漏洞。更多细节请参见安全公告 FreeBSD-SA-03:04

修复了 XDR 实现中的一个边界检查错误,该错误可能允许远程攻击者导致服务拒绝。更多细节请参见安全公告 FreeBSD-SA-03:05

已修复 OpenSSL 中的两个最近公开的漏洞。更多细节请参见安全公告 FreeBSD-SA-03:06

2.3 用户空间变更

burncd(8) 现在支持将 -s 选项设置为 max,以设置驱动器的最大写入速度。

cdcontrol(1) 现在支持 speed 命令,用于设置驱动器的最大速度(可以通过将速度设置为 max 来选择最大可能速度)。

compat4x 分发现在包含来自 FreeBSD 4.7-RELEASE 的 libcrypto.so.2 和 libssl.so.2 库。

已新增工具 fwcontrol(8) ,用于帮助用户访问和控制 FireWire 子系统。

ftpd(8) 现在支持 -h 选项,用于禁用在服务器消息中打印任何主机特定信息,如 ftpd(8) 版本或主机名。

ftpd(8) 现在支持 -P 选项,用于指定在守护进程模式下监听的端口。默认数据端口号现在设置为比控制端口号小 1,而不是硬编码。

ftpd(8) 现在支持 /etc/ftpchroot 文件的扩展格式。有关详细信息,请参阅现已可用的 ftpchroot(5) 手册页。

ftpd(8) 现在支持登录目录路径名,可以同时指定用于 chroot(2) 和在 chroot 环境中切换的目录。/./ 分隔符用于此目的,类似于其他具有此功能的 FTP 守护进程。它可以在 ftpchroot(5)passwd(5) 中使用。

已新增工具 getconf(1) ,用于打印 POSIX 或 X/Open 路径或系统配置变量的值。

ipfw(8) 现在支持命令 enabledisable,以控制 ipfw(4) 的各个操作(包括启用和禁用防火墙本身)。这些命令提供了比现有的 sysctl 变量更方便且更明显的接口。

make(1) 现在支持 -C 参数,在构建目标之前切换到给定目录。

mount_nfs(8) 现在支持 -c 选项,以避免对 UDP 挂载点执行 connect(2)。如果服务器未响应来自标准 NFS 端口号 2049 的请求,或如果它使用不同的 IP 地址响应请求(这在服务器有多个网卡时可能发生),则必须使用此选项。将 sysctl vfs.nfs.nfs_ip_paranoia 设置为 0 将使此选项成为默认值。

newsyslog(8) 现在支持 W 参数,以强制在开始新的压缩作业之前完成之前启动的压缩作业(针对由 G 参数指定的条目或条目组)。此功能旨在防止由于同时启动多个大文件的压缩作业而导致系统过载。

已新增工具 pathchk(1),用于检查路径名在 POSIX 系统之间的有效性或可移植性。

pw(8) 现在可以新增以 $ 字符结尾的用户名;此变更旨在帮助管理 Samba 服务。

rarpd(8) 现在接受 -t 参数,以指定替代目录 /tftpboot

uuencode(1)uudecode(1) 的 base64 功能现在可以通过将这些工具分别调用为 b64encode(1)b64decode(1) 自动启用。

标准文件流(stdin、stdout 和 stderr)的定义已变更,不再是编译时常量。某些旧的二进制文件可能需要更新的 3.X 兼容性库(例如,为 buildworld/installworld 设置 COMPAT3X=yes)。

2.3.1 第三方软件

BIND 已更新至版本 8.3.4。

所有 bzip2 套件的应用程序现在已安装在基本系统中(特别的,bzip2recover 现在已构建并安装)。

CVS 已更新至 1.11.5。

FILE 已更新至 3.41。

groff 及其相关工具已更新至 FSF 版本 1.18.1。

Heimdal Kerberos 已更新至 0.5.1。

ISC DHCP 客户端已更新至 3.0.1RC11。

libz 已更新至 1.1.4。

OpenSSH 已更新至 3.5p1。

OpenSSL 已更新至 0.9.7a 版本。除了其他功能外,此版本还包括对 AES 的支持,并利用了 crypto(4) 设备。

sendmail 已更新至 8.12.8 版本。

tcpdump 已更新至 3.7.2 版本。

时区数据库已更新至 tzdata2002d 版本。

2.3.2 Ports/软件包

每个 Port 骨架中的 pkg-comment 一行文件已被移除,其内容已移至每个 Port 的 Makefile 中。此变更减少了 Ports 使用的磁盘空间和 inode 数量。

2.4 发布工程和集成

GNOME 的支持版本已更新至 2.2。

KDE 的支持版本已更新至 3.1。

XFree86 的支持版本已更新至 4.3.0。

3 从旧版 FreeBSD 升级

如果你从以前版本的 FreeBSD 升级,通常有三种选择:

  • 使用 sysinstall(8) 的二进制升级方案。这个方式可能是最快的,尽管它假设你的 FreeBSD 安装没有使用特殊的编译选项。

  • 完全重新安装 FreeBSD。从技术上讲,这不是一种升级方法,并且通常比二进制升级不太方便,因为它要求你手动备份和恢复 /etc 的内容。然而,在需要变更磁盘分区的情况下,这可能是有用的。

  • /usr/src 的源代码进行升级。此方式更为灵活,但需要更多的磁盘空间、时间和技术专业知识。有关更多信息,请参阅 FreeBSD 手册 中的 `使用 make world' 部分。从非常旧的 FreeBSD 版本升级可能会遇到问题;在这种情况下,通常执行二进制升级或完全重新安装更为有效。

在开始升级之前,请阅读 INSTALL.TXT 文件以获取更多信息。如果你从源代码进行升级,请确保阅读 /usr/src/UPDATING

最后,如果你想使用各种方式跟踪 FreeBSD 的 -STABLE 或 -CURRENT 分支,请务必参考 FreeBSD 手册 中的 -CURRENT 与 -STABLE 部分。

重要:

升级 FreeBSD 应该在备份 所有 数据和配置文件后进行。


本文件及其他与发布相关的文档可以从 ftp://ftp.FreeBSD.org/ 下载。

关于 FreeBSD 的问题,请在联系 questions@FreeBSD.org 之前阅读 文档

所有 FreeBSD 4-STABLE 用户应订阅 stable@FreeBSD.org 邮件列表。

关于此文档的问题,请发送电子邮件至 doc@FreeBSD.org

最后更新于