本报告涵盖了 2007 年 7 月至 10 月之间与 FreeBSD 相关的项目。第六届 EuroBSDCon 于 9 月在丹麦举行。谷歌编程之夏项目圆满结束,许多参与者正在努力将他们的代码合并回 FreeBSD。
FreeBSD HEAD 分支中的 bugs 正在被清理,准备为 FreeBSD 7 的分支做准备。如果你对 FreeBSD 7.0 中的新特性感兴趣,我们建议阅读 Ivan Voras 的精彩总结 这里。
感谢所有报告人员的出色工作!希望你喜欢阅读。
http://wiki.freebsd.org/finstall
联系人:Ivan Voras <ivoras@freebsd.org>
“finstall”项目旨在为 FreeBSD 提供新的图形化安装程序。在 SoC 2007 期间,基本框架(包括客户端和服务器端)已完成,现已准备好实现主要的新特性。该项目应为 7.0-RELEASE 提供一个可用的安装程序。
目前有几个补丁等待 re@ 批准(unionfs、pwd、kbdmap)。在这些补丁提交之前,finstall 将无法按时完成或无法使用。
补丁提交后,将实现多个令人兴奋的特性,包括 ZFS 和 GEOM RAID 支持。
http://developer.berlios.de/projects/facund/
联系人:Andrew Turner <andrew@FreeBSD.org>
freebsd-update 前端能够等待 freebsd-update 下载新的补丁集进行应用。它可以在本地计算机上或通过 SSH 隧道安装并回滚补丁。
自编程之夏项目结束以来,工作已转移至 BerliOS。工作重点是为前端、后端和通信库编写测试。大部分通信库的测试已经完成,但前端和后端尚未进行测试。
编写更多测试。
http://wiki.freebsd.org/gvirstor
联系人:Ivan Voras <ivoras@freebsd.org>
GEOM_VIRSTOR(虚拟磁盘空间 / 超承诺 GEOM 类)已提交至 7-CURRENT,并将在 7.0-RELEASE 中发布。感谢 Pawel Jakub Dawidek 和其他为此做出贡献的人。
需要更广泛的曝光和测试。
联系人:Matus Harvan <mharvan@FreeBSD.org>
IP 可以轻松地通过多种网络协议进行隧道传输,涉及不同的层次,如 IP、ICMP、UDP、TCP、DNS、HTTP、SSH。虽然由于防火墙,可能无法建立直接连接,但可以将 IP 数据包封装为其他协议的有效载荷,从而突破防火墙。然而,每种封装方式都需要设置不同的程序,用户需要手动探测各种封装方式,找出在特定环境中可行的方式。
MTund 是一个使用运行时可加载插件的隧道守护进程,支持不同的封装。它可以自动选择在每个环境中最合适的封装方式,并能切换到其他封装方式。多个插件已实现,且守护进程支持多个并发客户端。
请注意,项目最初的名称是 Super Tunnel Daemon,但后来更名为 Magic Tunnel Daemon(MTund)。
配置文件格式和解析器。
更多插件(http、ssh 等)。
联系人:Constantine A. Murenin <cnst@FreeBSD.org> 联系人:Shteryana Shopova <syrinx@FreeBSD.org>
GSoC2007/cnst-sensors 项目旨在将 OpenBSD 的 sysctl hw.sensors 框架移植到 FreeBSD。该项目已经 成功完成,并已 提交到 DragonFly BSD,目前正在等待最终审查并整合到 FreeBSD 的 CVS 树中(前提是该树解冻)。
sensors 框架 提供了一个统一的接口,用于存储、注册和访问关于硬件监控传感器的信息。传感器类型包括但不限于温度、电压、风扇转速、时间偏移和逻辑驱动器状态。在 OpenBSD 基础系统中,框架涵盖了 sensor_attach(9)、sysctl(3)、sysctl(8)、systat(1)、sensorsd(8)、ntpd(8) 和 50 多个驱动程序,范围从 I2C 温度传感器和超级 I/O 硬件监控到 IPMI 和 RAID 控制器。还有一些第三方工具可用,例如 Nagios 插件和 ports/sysutils/symon。
作为谷歌编程之夏项目的一部分,框架的所有核心组件都已被移植,包括 sysctl、systat 和 sensorsd。一些最流行的 Super I/O 硬件监控器的驱动程序也已被移植:it(4),支持大多数现代 ITE Tech 超级 I/O,以及 lm(4),支持大多数现代 Winbond 超级 I/O。此外,一些现有的 FreeBSD 驱动程序已被转换为使用该框架,例如 coretemp(4)。
最终审查和提交。
联系人:Gábor Kővessy <gabor@FreeBSD.org>
这个编程之夏项目的两个最重要的部分已经完成。
Ports 的 DESTDIR 支持已重写,改为使用 chroot 安装。现在它更加轻量化且更易于理解,但对于最常见的情况,它能够很好地工作。
Ports 基础设施的 Perl 部分已经提取为一个独立模块。同时,新的版本处理机制也已经发明。你可以在 Wiki 上找到更多信息。
联系人:Murray Stokely <murray@FreeBSD.org> 联系人:Robert Watson <rwatson@FreeBSD.org>
我们很高兴报告我们的第三届连续谷歌编程之夏已成功结束。根据所有的反馈,FreeBSD 在此项目中的参与取得了完全的成功。我们从众多令人印象深刻的申请中筛选出 25 个项目,并为其提供了资助,其中 92% 的项目成功完成,并获得了全额 $4,500 的奖学金。FreeBSD 基金会还从谷歌获得了每位学生 $500,总计 $12,500。
这些学生项目包括安全研究、改进的安装工具、新实用工具等。许多学生在官方项目结束后仍继续在 FreeBSD 项目上工作。三名学生已经获得了完整的 src/ 提交权限,预计会有更多学生获得此权限。至少有 2 位 FreeBSD 导师将在本月与谷歌组织者会面,讨论导师峰会。
将学生项目集成到 FreeBSD -CURRENT。由于 FreeBSD 7.0 代码冻结,一些项目目前被阻塞,但我们希望在未来的版本中看到这些贡献。
更新项目想法列表。那里列出的许多项目已完成,我们始终需要新的项目供明年的学生和其他人全年进行工作。 http://www.FreeBSD.org/projects/ideas
http://wiki.freebsd.org/AppleMacbook
联系人:Rui Paulo <rpaulo@FreeBSD.org>
编程之夏项目进展顺利,我们取得了有趣的结果。至少 Mac Mini 应该已经完全支持。至于其他苹果系统,我们仍需修复一些细节问题。
将 rpaulo-macbook p4 分支集成到 CVS。
继续解决剩余问题。
联系人:Alexander Motin <mav@FreeBSD.org>
新的 mpd-5.x 分支已经启动,计划很快发布首个公开版本。新分支的主要目标是实现基于动态按需链接/捆绑创建的新操作原理。新设计带来了几个好处:
显著简化了服务器配置——不再需要大量预定义的链接/捆绑,
新的多链路实现——不再需要预定义的链接-捆绑关系,
像 Cisco VPDN 设置中的呼叫转接(LAC、PAC、TSA)现在可以根据对等认证名称/域进行启用/配置。
支持 L2TP 认证代理。
http://wiki.freebsd.org/MulticastDNS
联系人:Fredrik Lindberg <fli@FreeBSD.org>
该项目(最初作为 GSoC 2007 项目启动)旨在提供完整的组播 DNS 和服务发现套件。自上次状态报告以来,项目已经取得了很大进展,并且正在慢慢达到可用状态。大多数功能已经完成,当前的重点是修复未解决的 bug、微调和测试。然而,仍然有一些待办任务(见下文)。更多信息和快照可以在 wiki 页面找到。
Avahi 库包装器。
dns_sd(Apple)库包装器。
测试(始终欢迎)。
http://feanor.sssup.it/~fabio/freebsd/lkvm/
联系人:Fabio Checconi <fabio@FreeBSD.org> 联系人:Luigi Rizzo <luigi@FreeBSD.org>
Linux KVM(基于内核的虚拟机)是一个软件包,用于在支持 Intel VT-x 或 AMD-V 虚拟化扩展的机器上完全模拟 x86 硬件,适用于较新的 AMD 和 Intel 处理器,例如最近的 Athlon64、Core 2 Duo、Xeon 等。
Linux KVM 已作为可加载内核模块移植到 FreeBSD,使用 linux-kmod-compat 移植(位于 /usr/ports/devel/),最大程度地重用原始源代码,并加上一个用户空间客户端,包含修改版的 qemu,使用 KVM 来执行其虚拟机。
移植工作已完成,编程之夏结束时的许多限制已被去除,已修复已知的 bug。一些配置已进行了测试,FreeBSD-CURRENT i386 客户机已经在 Intel 和 AMD 处理器上启动,在 i386 和 amd64(主机)安装上均可使用。目前仅支持一个客户端,性能尚不令人兴奋,但该项目似乎已经准备好接受更广泛的测试。
联系人:Hans Petter Sirevaag Selasky <hselasky@freebsd.org>
在过去的三个月里,FreeBSD USB P4 项目进行了大量更改。这些更改主要涉及支持 USB 设备端和多帧 USB 传输的能力。直到目前,FreeBSD USB 堆栈只支持 USB 主机端。2007 年圣诞节前,P4 USB 项目将提供 USB 设备支持以及一些简单的 USB 设备端实现。从技术上讲,USB 设备端驱动程序将与 USB 主机端驱动程序非常相似。实际上,差异非常少。支持多帧 USB 传输使得可以将多个短包终止的 USB 帧从不同内存位置传输到 USB 主机控制器,结果只会触发一次中断。更具体地说,我已经实现了对 EHCI 传输描述符中的 "alt_next" 指针的支持。这应该能显著增加每秒可以传输的短包终止 BULK 帧的最大数量。
我经常收到人们询问 USB P4 项目何时会合并到 FreeBSD-current 中。答案并不简单,但可能需要大约一年的时间。原因并不是 USB P4 项目中的当前代码不可用,而是需要提高质量,使已经良好的解决方案更技术精湛,编写更多文档,并对代码进行风格优化。
关于新 USB API 的想法和评论可以通过 freebsd-usb@freebsd.org 提交。
联系人:FreeBSD.org 管理员团队 admins@FreeBSD.org <>
在过去的几个月里,多个 FreeBSD.org 系统遇到了硬件问题,包括主要的 Web 服务器 www.FreeBSD.org,因风扇故障停机。坏风扇已被更换,预计系统将恢复稳定。通常,我们正在用更新的系统替换较旧的硬件,并在此过程中整合机器功能。
自 8 月以来,大多数 FreeBSD.org 服务已通过 IPv6 提供,连接由 ISC 提供,并通过隧道传输。
为了践行“吃自己的狗粮”原则,首批两个 FreeBSD.org 基础设施系统已升级到 FreeBSD 7,未来还将继续升级更多系统,具体时间视情况而定。
由于 Perforce 和 CVS 服务器负载过重,这两个服务将迁移到独立的系统上,以提高 CVS 和 Perforce 的性能。
联系人:Mark Linimon <linimon@FreeBSD.org>
当前 Ports 数量已超过 17,700。PR 数量略有下降,现为 700 多个。
构建集群进行了 6 次实验性运行。最终提交的内容包括修复去年 DESTDIR 变更的修复、将 Perl 部分重构到 bsd.perl.mk、将 xorg 从 7.2 升级到 7.3、将所有的 autoconf 依赖项升级到最新版本(尽可能的情况下),以及将 Python 升级到 2.5。这些努力导致“未解决”的 portmgr PR 数量降到很低的水平。portmgr 感谢所有与我们合作的人员,以及大家在我们赶上进度时的耐心。
此外,lofi@ 提交了将 QT 升级到 4.3.1。
自上次报告以来,我们新增了 3 名提交者。
GCC4.2 已被导入到 7.0 基础系统中。不幸的是,这破坏了大量的 ports。尚未修复的 ports 已标记为“已损坏”,适用于 i386 和 amd64。请查看上面的 GCC4 状态页面,如果你能提供帮助。
大多数剩余的 ports PR 都是“现有 port/PR 已分配给提交者”。尽管 maintainer-timeout 政策帮助减少了积压问题,但我们仍然需要做更多工作,以使 ports 达到应有的状态。
尽管我们已经增加了很多维护者,但仍有许多未维护的 ports。amd64 上的包略有滞后,sparc64 上的包则需要更多工作。
http://imunes.tel.fer.hr/virtnet/
联系人:Marko Zec <zec@fer.hr>
网络堆栈虚拟化项目旨在扩展 FreeBSD 内核,保持多个独立的网络状态实例。这使得不同的类似 jail 的环境之间可以保持网络独立性,每个环境维护自己的私有网络接口集、IPv4 和 IPv6 网络与 Port 地址空间、路由表、IPSec 配置、防火墙等。
该原型与 FreeBSD -CURRENT 保持同步,应该足够稳定,适合测试和实验性使用。项目的网页包括每周的代码快照,以及可以下载的安装在 VMWare 磁盘映像上的虚拟化 FreeBSD 系统。
短期目标是为 FreeBSD 7.0-RELEASE 提供生产级内核支持的虚拟化网络(作为内核替换的插件),同时继续保持与 -CURRENT 的同步,以便将来合并。
联系人:Murray Stokely <murray@FreeBSD.org> 联系人:Matt Olander <matt@FreeBSD.org> 联系人:Fukang Chen <loader@FreeBSD.org>
FreeBSD 的衍生版本 PC-BSD 在 BSD 新用户中越来越受欢迎。现有的 FreeBSD 手册中的大部分内容直接适用于 PC-BSD。我们正在编写特定于 PC-BSD 的安装和 Port /包章节(PBI)。这些章节将被检查到 docs/en_US.ISO8859-1/books/pcbsd-handbook 中,内容将包括与手册中相同的一些章节,但会有不同的 &os 实体,且这些章节文件中可能包含一些条件性的变化。
需要进一步完善 PC-BSD Port /包章节。Fukang 可能已经在这一领域做了一些工作,所以请先与他协调。
需要为 PC-BSD 安装章节添加更多文字,以补充 Fukang 收集的屏幕截图。请与他联系进行协调。
联系人:Gábor Kévesdén <gabor@FreeBSD.org> 联系人:Gábor Páli <pgj@FreeBSD.org>
我们有了一位新志愿者,Gábor Páli,他为我们提供了一些高质量的贡献。结果,我们在上次状态报告之后增加了 5 篇新文章。
目前,Perforce 仓库中正在进行将 FreeBSD 手册翻译成匈牙利语的工作。任何形式的支持都非常欢迎。
翻译手册。
联系人:J. Vicente Carrasco Vayá <carvay@FreeBSD.org> 联系人:Gábor Kévesdén <gabor@FreeBSD.org>
在该项目经历了长时间的停顿后,我们开始对翻译内容进行审查和更新。我们需要更新内容以反映英语版本的当前状态。有些部分的写作风格较差,另一个任务是稍微改善这些内容。任何帮助都非常欢迎。
将网站内容与英语版本同步。
将文档与英语版本同步。
审查翻译质量较差的部分。
增加更多翻译。
http://2007.eurobsdcon.org/
联系人:EuroBSDCon 2007 组织委员会 <info@EuroBSDCon.dk>
第六届 EuroBSDCon 会议圆满落幕,共有 215 人参加了会议。反馈非常积极。
在会议期间,我们举办了最佳演讲比赛。Steven Murdoch、Isaac Levy 和 Pawel Jakub "zfs-man" Dawidek 因其精彩的演讲分别获得了奖项。
此外,会议的 300 多张照片已上传到 Flickr,并加上标签 EuroBSDCon2007
演讲的视频和幻灯片现在已在会议网站上提供。
我们感谢所有讲者慷慨地允许我们录制并发布他们的演讲。
EuroBSDCon 2008 将在斯特拉斯堡举行。
http://people.freebsd.org/~edwin/gnats/
联系人:Edwin Groothuis <edwin@FreeBSD.org>
随着 bsd@ 离开,我们失去了 GNATS 统计网页。在这个链接上,我生成了一组新的图表,目前是 bsd@ 所有图表的一个子集,未来希望能成为它们的超集。