War*_*ung 35
ZFS 不在正式的 Linux 内核中,除非 Oracle 根据与 GPL 兼容的内容重新许可代码,否则永远不会。
这种不兼容性是有争议的。支持在 Linux 系统上使用 ZFS 的主要论据围绕着所谓的“公平交易”规则。该规则仅适用于这种情况,仅当 ZFS 作为独立于内核的模块提供时,两者仅通过已发布的 API 进行通信,并且两个代码库可以相互独立运行。然后声称两个代码库的许可证都不会污染另一个,因为它们都不是另一个的衍生作品;他们是独立的,但合作。尽管如此,即使在这种解释下,这意味着 ZFS 模块仍然必须与 Linux 内核分开提供,这就是我们今天看到的 Ubuntu提供的方式。
与 CDDL 与 GPL 的争论完全不同,NetApp 声称他们拥有 ZFS 中使用的某些技术的专利。在 Oracle 收购之后,NetApp 与 Sun 达成了和解,但该和解并不保护任何其他 Linux 分销商。(红帽、Ubuntu、SuSE...)
在我看来,这些是您的选择:
请改用btrfs,因为它具有与 ZFS 相似的功能,但没有 GPL 许可证冲突,并且自 2.6.29(2009 年 1 月发布)以来一直在主线内核中进行测试。
btrfs 的主要问题是它的RAID 5/6 功能问题由来已久。这些问题正在得到解决,但每当这些问题中的一个出现时,它就会重置“稳定时钟”。
另一个担忧是 Red Hat表示下一个 Red Hat Enterprise Linux 版本将不包含 btrfs。
Red Hat 在 btrfs 上采取这种立场的原因之一是他们计划使用他们称为 Stratis 的不同技术堆栈提供类似的功能。因此,您的另一个选择是等待 Stratis 出现,1.0 计划于 2018 年上半年发布,大概与 Red Hat Enterprise Linux 8 重合。
为您的文件服务器(例如 FreeBSD)使用不同的操作系统,并使用 NFS 将其连接到您的 Linux 机器
该许可证冲突使得机构外的涉嫌违法的分配相结合的系统。我不是律师,但我的感觉是,撇开专利问题不谈,在 Linux 上分发 ZFS 与随系统分发非 GPL 二进制驱动程序(例如某些视频卡的驱动程序)一样令人担忧。如果其中一个困扰您,另一个也应该困扰您。
切换到 Ubuntu,它从 16.04 开始就随操作系统一起提供 ZFS 内核模块。Canonical 认为将 ZFS 内核模块与操作系统本身一起分发在法律上是安全的。您必须决定是否相信 Canonical 的意见;还要考虑到,如果出现法律问题,他们可能不愿意赔偿您。
请注意,目前无法在没有大量手动操作的情况下使用 Ubuntu 从 ZFS 启动。
顺便说一下,btrfs 也得到了 Oracle 的支持,但在 Sun 收购之前几年就开始了。我不相信这两者会合并,或者由于许可冲突和专利问题而弃用另一个。ZFS 太受欢迎了,无法消失,但对 ZFS 替代方案的需求将继续存在。
这里的几个答案提到了Behlendorf ZFS 端口。
请记住,Behlendorf ZFS 端口目前面向拥有超大文件系统的Lustre用户。这是劳伦斯利弗莫尔国家实验室、美国能源部和其他研究机构所需要的,因为它们运行非常大的文件系统(100TB - 不久的将来会达到多 PB 系统)。Lustre 在 Linux 上运行,当用于超过特定大小的文件系统时会遇到问题。有些人希望使用 ZFS 解决这个问题,这就是 zfsonlinux.org 发挥作用的地方。
为了让 ZFS 对我们其他人有用,ZPL(ZFS POSIX 层)必须移植到 Linux,以便管理员可以与文件系统交互。zfsonlinux.org 有一个ZPL的开发版本,KQ Infotech 提供了 ZPL 的另一个实现,它是 zfsonlinux.org 代码的一个分支。
Behlendorf希望帮助改进 ZPL,并将 KQ Infotech 的任何更改合并到 zfsonlinux.org 存储库中。如果你能做到这一点,社区将受益匪浅,你将成为摇滚明星。