kledgeb Ubuntuの使い方や日本語化、アプリの使い方を紹介しています。

Debianの公式リポジトリーでZFSを提供

「ZFS」といえば「Ubuntu 16.04」の話題が記憶に新しいですが、「Debian」の公式リポジトリーで「ZFS」が提供されるようになりました。


「ZFS」は「Debian」の「contrib」リポジトリーに配置され、「zfs-linux」パッケージがユーザーに提供されます。
現在「unstable」を使用しているユーザー向けに提供されています。

ソースコードからカーネルモジュールのビルドを行う

「ZFS」はソースコードのみ提供されます。
「ZFS」のソースコードは「DKMS」によりビルドされ、カーネルモジュールが生成されます。
ユーザーの環境で「DKMS」により「ZFS」のビルドが自動的に行われるため、ユーザーが自分でビルド作業を行う必要はありません。

Debianは、我々のユーザーや派生ディストリビューションに明確で正しい解を提供していることに常に誇りを持っている。

これにはライセンスも含まれる。
我々はDebianが含むソフトウェアは、100%フリーソフトウェアを含むようにしている。
もしあなたがDebianをインストールすれば、Debianフリーソフトウェアガイドライン及びDebian社会契約に基づく自由が保証される。

さて、ZFS on Linuxはちょっと厄介だ。
ZFSはCDDLでライセンスされており、LinuxカーネルはGPLv2でのみライセンスされている。
両プロジェクトはフリーソフトウェアライセンスだが、お互いのライセンスに互換性がない。

この非互換のため、LinuxカーネルとCDDLでライセンスされたモジュールを組み合わせて提供するにはリスクがある。
(カーネルモジュールが一旦ロードされれば、Linuxカーネルと組み合わされて動作するという議論があるが、私は法律家ではないしその点には触れない)

さて、DebianがLinuxカーネルにコンパイルされたZFSカーネルモジュールを含んで配布すると、ライセンス違反だと訴えられるだろうか?

おそらくそうなるだろう。Debianプロジェクトにとってそれは正しい選択ではない。
DebianのユーザーやDebianの商用・非商用の派生ディストリビューションを提供している人達との約束を我々は破ることになる。

もし商用の派生ディストリビューションが、ZFSカーネルモジュールを含んだDebian安定版を採用し、我々が提供するバイナリーを使用したとしよう。
彼らが十分な資金を持っており訴訟対象として価値があれば、何度も訴えられるだろう。

Debianは常に上流のソフトウェアのライセンスを真摯に受け止めている。
もしそこに疑念があれば、そのソフトウェアはDebianの公式リポジトリーには配置されない。

さて注目すべきは、ZFSが多くのDebianユーザーにとって重要なソフトウェアである、ということである。
ZFSを利用したいユーザーは、ZFSが簡単な方法でインストールでき、ZFSを利用できるようにして欲しいと願うだろう。

我々が辿り着いた結論は、ユーザーにZFSのソースコードのみ提供し、ユーザーの環境でDKMSによるビルドを行う方法である。

ユーザーはDebianの公式リポジトリーからZFSのソースコードを含むパッケージをインストールし、ユーザーの環境でDKMSによるビルドを行う。
DebianはビルドされたZFSのバイナリーは配布しない。

README.Debianファイルに、生成されたZFSのバイナリーの扱いに関し、注意事項が記述してある。

最後に、上記の私の判断は最終的な判断ではない点を指摘しておきたい。
アーカイブの中身はFTPのマスター達によって決定される。
私ができることは、多くの衝突しあう見解を調整することだ。
私はアーカイブにZFSがすぐに受けいられることを期待している。

参考



関連記事一覧
オプション