Linux:ZFSのライセンス問題、カーネルにマージされない理由

Linux
この記事は約7分で読めます。

まえがき

今月12日(2020年1月)、Linuxカーネルの開発者であるLinus Torvalds氏が「Real World Technologys」のフォーラムで ZFS (Zettabyte File System、ゼタバイト・ファイル・システム)というOracleが権利を抱えているファイル・システムについて意見を表明しました。

https://www.realworldtech.com/forum/?threadid=189711&curpostid=189841

あるユーザが最近のカーネル変更でZFSが動かなくなってしまったことに苦言を呈したことから一連のやり取りがはじまりました。

Linus氏はZFSのマージをしないことを改めて強調しました。ZFSを巡る問題がよほど頭に来たのか「ZFSを使うな」とまで書き込みました。

その余波は様々なフォーラムにまで波及し、ZFSを捨ててBtrFSを使おうを主張するものや、ライナスはわかっていない使ったこともないくせに意見するな、というような争いが巻き起こっています。

やや賞味期限切れの話題ではありますが、自分なりに調べてみたことをまとめてみました。

LinuxカーネルはZFSをサポートできない

Linus氏は

「もし ZFS みたいな(サードパーティー製)カーネルモジュールを追加した場合、ご自身で頑張ってもらうしかない。我々ではサポートできない」

「 ZFS が GPL ライセンスになり、 Oracleの法務担当か Larry Elison(オラクルのトップ)から OK が出ない限り、ZFS をマージするつもりはない」と突っぱねました。

その理由としては

「 Oracle の訴訟好きな体質と過去に何度もライセンスを巡り問題を起こしているため、安心してマージすることはできない」と吐露しました。

Linuxカーネルに実装するという議論以外にもディストリビューションに取り入れても大丈夫かどうか、という議論も何年も前からされてきました。

これらの議論に対しOracleは無視を決め込んでいることが余計な混乱を長年巻き起こしています。

訴訟リスク

Java APIのライセンスをめぐりOracleがGoogleに対し訴訟を仕掛けたのは Googleが儲かっていたからだ、とする意見もありますが、儲かったら仕掛けられるのか…という疑念があります。オープンソース・ソフトウェア・プロジェクトだからといって儲かったらいけない道理はありませんし、Linux財団などには多くの大企業から多額の寄付が行われています。訴訟リスクが全くないとは言い難いのです。

Linus氏は

「ZFSを使うな。極単純なことだ。ZFS はただの流行りみたいなものでそれ以上でもそれ以下でもない。私にはライセンスの問題だけで触りたくなくさせる」

「(Oracle の)ZFSのベンチマーク結果も目を見張るものはなく、私の知る限りちゃんとメンテナンスされていない。安定性の面でこれを使うメリットはあるのか?」

と追撃しました。

言うまでもなく、このパフォーマンスと安定性についてLinus氏はあくまでOracle のZFSを指しています。Linus 氏はOpenZFSのことを含んでいないと後に否定しています。しかしOpenZFSもGPLの元で発行されていないので本家同様、法的な問題を抱えているのは変わりません。

沈黙を保つOracle

数々のメディアがこの一連のやり取りを紹介しているにも関わらず、Oracleにコンタクトを取ったのは、私が知る限り、RegisterとBryan Lunduke氏だけでした。

その返答はいずれも無回答、「この件についてはコメントを差し控えさせていただきます」というものでした。

GPLライセンス有識者の見解

GNU GPLの発起人かつフリーソフトウェア財団のリチャード・ストールマン氏は 2016年4月にこのような見解を発表しています。

In January of 2005, we added to our license list a statement explaining that the “Common Development and Distribution License, version 1.0 (CDDL) is incompatible with all versions of the GNU General Public License (GPL).” We explained that “a module covered by the GNU GPL and a module covered by the CDDL cannot legally be linked together,” and we urged developers “not to use the CDDL for this reason.”

https://www.fsf.org/licensing/zfs-and-linux

「(ZFSのライセンス)CDDLはGPLはどのバージョンでも互換性はない。”GNU GPLで発行されたモジュールとCDDLの元で発行されたモジュールは合法的にリンクさせることができない”ことを説明し”CDDLを使わない”ことを開発者たちに説いた。」

Software Freedom Conservancy(SFC) の見解

However, our conclusion is simple: Conservancy and the Linux copyright holders in the GPL Compliance Project for Linux Developers believe that distribution of ZFS binaries is a GPL violation and infringes Linux’s copyright. We are also concerned that it may infringe Oracle’s copyrights in ZFS. As such, we again ask Oracle to respect community norms against license proliferation and simply relicense its copyrights in ZFS under a GPLv2-compatible license.

https://sfconservancy.org/blog/2016/feb/25/zfs-and-linux/

「我々とLinuxのためのGPL団体はZFSバイナリが含まれるディストリビューションはGPLの規定とLinuxの著作権を侵害していると考える。さらに、Oracleの著作権を侵害している可能性があることを懸念している。なので、我々はオラクル社にコミュニティの規範を尊重し、ZFSのライセンスをGPL v2と互換性のあるライセンスに変更することを求めたい。」

セーフなのかアウトなのか

結論としては、Linus氏の言っていることは概ね正しいようです。

ZFSはCDDL(Common Development and Distribution License)でLinuxカーネルはGNU GPL(General Public License)です。

CDDLはいわゆる準コピーレフト型ライセンスでオープンソース・ライセンスとしての要件を満たしています。しかしLinux のライセンスであるGNU GPLはバイナリをビルドする際、すべてのソースコードはGPLでライセンシングされていることを要求しています。

準コピーレフト型ライセンスは他のコードと組み合わせて公開した場合、ライセンス違反となる可能性があります。

さらにOracleが沈黙しているというのが何よりの赤信号でしよう。

最後に

ZFSは自らチューニングを行わないとそのパフォーマンスを引き出せないので少々ハードルが高いですが、柔軟性、冗長性の高い大変優秀なファイル・システムです。

開発元のSunマイクロシステムズもそれだけ力を入れて開発したためか、ZFSの開発者らはわざとGNU GPLと互換性のないライセンスの元にリリースしたと語っています。Linuxにマージされるのを阻止したかったのか、そのほかに理由があったのか、その意図はわかりませんが、これが長らく多く人にとって苛立ちと不利益になっていることは確かです。

Oracleが何も対応しないのは当時の開発者らを尊重しているから…ということはないと思いますが、まだライセンスを変更するメリットを感じていないのでしよう。

おわり

コメント

タイトルとURLをコピーしました