作为 Ubuntu 的上游 Linux 发行版,Debian 一直是以稳定和易用而著称。不过严格意义上来说,Debian 其实并不是一种 Linux 发行版,它更像是一个大的系统组织框架,在这个框架下有多种不同操作系统核心的分支计划,如采用 Linux 内核的Debian GNU/Linux系统、采用GNU Hurd 内核的 Debian GNU/Hurd 系统、采用 FreeBSD 内核的Debian GNU/kFreeBSD 系统,以及采用NetBSD 内核的 Debian GNU/NetBSD 系统等等,详情见维基百科的 Debian 词条。
而在这篇文章中我们要介绍的就是 Debian GNU/kFreebsd 这个分支。其实,在当相久的一段时间里,采用 FreeBSD 内核的 Debian GNU/kFreebsd 一直处于试验性阶段,并未真正进入官方支持。不过在今年 8 月份的 Debain 代码冻结通告中称,从 Debian 6.0 ( 代号为 Squeeze ,目前的 Debian Unstable 版 ) 开始,Debian GNU/kFreebsd 正式进入预发布状态,也就是说将 Debian 系统移植到 FreeBSD 内核的计划便被赋予了与其它版本相等的地位。不过 Debian/kFreeBSD 目前只支持 i386 和 amd64 两种架构。
# 基本介绍
Debian GNU / kFreebsd 的项目主页:http://www.debian.org/ports/kfreebsd-gnu/ ,这里是一份详细的 FAQ 。
Debian GNU/kFreebsd 的构建情况是这样的,使用 GNU C Library ( glibc ) 把整个 Debian userland (用户层) 完全移植到了 freebsd 内核之上,目前***的 Debian GNU/kFreebsd 采用是 FreeBSD 8.1 Stable 的内核。 ( PS : 据说 另外一个分支 Debian GNU/NetBSD 依旧是基于 BSD Libc )
所以,在 Debian GNU/kFreebsd 的用户空间中完全保留了 GNU 和 Debian 的工具,包括强大的 apt-get 包管理工具。与此同时,Kernel 中也包含了 FreeBSD 内核的特性:比如通过 kldload 来加载内核模块等,这些内核模块被放在 /lib/modules/8.1-1-686 目录下,有包过滤工具 PF ( OpenBSD Packet Filter ) 和 NDIS 驱动等等。
# 关于 ZFS
你应该知道,ZFS 是 Solaris 及 FreeBSD 上***大的文件系统,之前我们也有报道过Linux 上也将会有原生 ZFS 支持。所以既然 Debian GNU/kFreebsd 使用的是 FreeBSD 内核,就不得不提到 ZFS 这一特性。另人高兴的是,Debian GNU/kFreebsd 也支持 ZFS 文件格式,但 ZFS Pool 版本只是 V14 ,而且由于受到 UFS 文件系统的限制,无法通过 Debian Installer 把根文件系统安装在 ZFS 系统上(其实 FreeBSD 也是这样的)。
用户想用 ZFS 的话可以通过 apt-get install zfsutils 来安装。
而在上游的 FreeBSD 上,有可能在这个月底将采用 Zpool V28 ,将包括删除重复数据、triple parity RAIDZ (RAIDZ3) 、ZFS DIFF, Zpool Split 等一系列新功能。
# 性能
在今年七月份的时候,Phoronix 就对 Debian GNU/kFreeBSD 做过一个测试,分别使用了kFreeBSD 7.3 、k FreeBSD 8.0 内核, 结果显示,在多数32位版本的测试中,Debian GNU/kFreeBSD 的速度都没有 Linux 版快,但差距并不大。64位版本情况类似,但部分测试如 7-Zip 压缩和 Gcrypt CEMLLIA256-ECB 加密,GNU/kFreeBSD则有相当明显的优势。
# 试用:
目前 Debian GNU/kFreebsd 可以通过官方提供的 mini.iso 来安装,你可以下载 32位 或 64 位 的版本。
1 安装:Debian GNU/kFreebsd 安装完全是基于标准的 Debian Installer ,如果你安装过 Debian 的话基本是没什么困难而言的。
2 与 Linux 版一样,Debian GNU/kFreebsd 的启动引导工具采用的同样是 GRUB 2
3 使用,之前说过 Debian GNU/kFreebsd 采用的是完整的 Debian Userland ,所以基本的使用与 Debian GNU/Linux 是没什么多大差别,这里是官方的一份详细的 FAQ ,你可以参考一下。
另外再加上 Freebsd kernel 的一些特性,你可以使用 Linux 版本所没有的一些功能,比如强大的包过滤工具 PF 及 ZFS 文件系统等等。当然,也是由于 FreeBSD 本身的限制,可能对硬件驱动没有 Linux 那么好,虚拟化支持也不够完善。同时,目前该项目还缺乏全面的官方操作文档,想要使用的话还需自行捉摸。
# 总结
由于现在的 Debian GNU/kFreebsd 还处于开发及测试阶段,并不能说是一个成熟的系统,存在着很多的 Bug ,官方也并不建议你用在生产服务器上。
当然这只是一个开始,这种具有有创新意义的尝试还是值得鼓励的,毕竟 FreeBSD 是一个久经考验、稳定强大的操作系统,配合 Debian 的易用性,也许可以大有作为,至少对于服务器用户而言是如此。
【参考】
1) Debian GNU/kFreeBSD Becomes More Interesting
【编辑推荐】