Ubuntu将正式支持ZFS文件系统
2015-11-02 10:53:41 阿炯

Ubuntu Snappy Core团队在6号上午展开了一场趣味讨论,而我们也因此而获知这款Linux发行版将通过何种方式在内核模块中加入对基于Snappy的操作系统的支持。这场讨论是从Geoffrey J. Teale向Ubuntu Snappy的开发者们提出“是否可以通过一个框架的形式,为基于Snappy Core的系统添加Linux内核模块”开始的。


当前为Ubuntu Snappy系统添加内核模块的方法,是将它们打包到一个标准快照中,然后通过“sudo insmod”命令手动注入内核包。

Geoffrey J. Teale说到:“我想的是如何部署小众的ZFS,因为硬件是现成的,并且不需要什么特殊的驱动,基本上只需要像对待内核模块那样部署ZFS和SPL就可以了。如果我必须做一个自定义镜像才能使用snappy,反而会减少Ubuntu Core作为平台的价值(Ubuntu Server用起来会更轻松)”。

Zygmunt Krynicki在快速回答中建议Mr. Teale将他自己的内核roll到Ubuntu Snappy系统的内核中,以确保内核模块是可加载的。而据Mr.Krynicki所述,或许还需要一个定制的框架或应用,才能在操作系统中部署ZFS用户空间。

紧接着,Mark Shuttleworth也加入了讨论,并且说到:“既然你想要ZFS,就将它当做一个标准,恰当地包括在Ubuntu中好了”。对于Mr. Teale和所有需要在Ubuntu Linux中支持这款强力的艺术级ZFS文件系统的用户来说,这显然是最好不过的消息了。毕竟在当前,ZFS只是作为一个FUSE_module(用户空间文件系统模块)而存在于Ubuntu之中。

原文链接

Ubuntu 16.04 LTS 将支持 ZFS 部分

在你更新系统至Ubuntu 16.04 LTS(Xenial Xerus)之前,还请务必知晓这项新功能仍处于技术预览的阶段。Ubuntu并未完成所有工作,用户在安装前需要将之手动添加到安装器中,想要其成为默认选项,显然还需要等待很长一段时间。

Ubuntu开发者青睐该文件系统的一个主要原因,是Debian也支持它。鉴于Ubuntu基于Debian、且ZFS正处于上升期,Canonical的决策也显得理所应当。

需要指出的是,ZFS的出现,并非一夕之功。在过去的十年里,它变得越来越普及,支持ZFS的操作系统包括——Solaris、 OpenSolaris、OpenIndiana、illumos、Joyent SmartOS、OmniOS、FreeBSD、Debian GNU/kFreeBSD systems、NetBSD、OSv、甚至Mac OS with MacZFS。

Canonical的Chad Miller在Google+上解释到:
Ubiquity安装器暂无支持,据我所知,grub中还有一个bug(https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1527727) (fixed in my PPA, ppa:cmiller/ppa)。

如果你是全新安装,那么可以引导,通过发行版中已有的工具(my PPA会在Xenial中有些改变),挂载后继续完整安装ZFS。你仍然需要一个EFI分区来辅助引导grub。最后要说一下,ZFS的授权方式是CDDL,它与Linux内核的GPL授权有些不相容。但不管怎样,Ubuntu 16.04 LTS(Xenial Xerus)都会是一个有趣的发行版本。

解决许可证兼容性问题,Ubuntu 内核将内置 ZFS


2016年2月,Canonical 的产品和策略团队的 Dustin Kirkland 撰文证实 Ubuntu 计划捆绑 ZFS 文件系统核心模块。他写到:zfs.ko 是一个自容器的文件系统模块,该模块并非 Linux 内核自带,而是来自 OpenZFS 和 OpenSolaris 。这种各自独立的局面已经存在多年,特别是自容器、非 GPL 甚至上商业(如 nvidia.ko)的内核模块。

而 Canonical 专门对此进行了法律上的研究,包括与行业里软件自由法律顾问的讨论,这些讨论和研究主要针对的就是 Linux 内核和 ZFS 文件系统之间的许可证问题。

通过研究和讨论我们认为在 Ubuntu 核心中加入 ZFS 支持是遵守两个项目许可证的条款和权利的。Linux 内核的 GPLv2 许可证和 ZFS 的 CDDL 许可证都是 copyleft 许可证,各自拥有不同的条款范围。CDDL 针对其本身所有的文件,而 GPLv2 针对的衍生产品。

CDDL 无法应用到 Linux 内核,因为 zfs.ko 是一个自容器的文件系统模块,内核本身很明显并不是该新文件系统的衍生产品。我们的结论对 Ubuntu 用户来说是一个好消息,对 Linux 来说是好消息,对自由和开源软件来说更是一个好消息。我们已经达成这个结论,而且我们也没兴趣继续争论许可证的兼容性问题,但欢迎大家讨论这些技术的应用机会。

SFC认为Ubuntu如果支持 ZFS 将侵犯 GPL 许可证

Canonical开发者宣布即将发布的Ubuntu 16.04 LTS Xenial Xerus将支持甲骨文/Sun的ZFS文件系统。Software Freedom Conservancy(SFC)发表文章认为Canonical支持ZFS的计划将侵犯内核的GPLv2许可证。

ZFS文件系统使用的是 CDDL许可证,与Linux内核使用的GPLv2许可证不兼容。Canonical在作出支持ZFS的决定前进行过法律评估,认为支持ZFS不会违反 GPLv2许可,理由是zfs.ko是一个自足的文件系统模块,内核当然不是ZFS文件系统的衍生作品,而作为一个独立的模块zfs.ko也不是内核的衍 生作品。SFC对此解释有异议,认为发行zfs.ko违反了GPL许可。

ZFS for Linux 进入 Debian 软件库

2016年5月,继Arch Linux、Ubuntu、Fedora、Gentoo、Red Hat Enterprise Linux、CentOS和openSUSE等发行版之后,Debian GNU/Linux的软件库正式加入了ZFS For Linux,为操作系统提供原生的ZFS文件系统支持。Debian unstable channel加入的ZFS For Linux版本是zfs-linux 0.6.5.6-2, 不是最新上游版本,最新版本是0.6.5.7。Debian对ZFS的支持算得上比较晚了,上个月发布的Ubuntu 16.04 LTS加入了对ZFS的正式支持,而Debian的ZFS实现看起来借鉴了很多来自Ubuntu的实现。