ZFS is a new kind of file system that provides simple administration, transactional semantics, end-to-end data integrity, and immense scalability.

FreeBSDにZFSが移植されてから、ZFSについてMLで話題がでない日はないほどFreeBSD開発者やユーザの間でZFSが関心ごとであり続けている。もしかするとこれと同じことがLinuxでもおこるかもしれない。GPLとの衝突を避けるためにLinuxにおけるZFS導入はFreeBSDほど導入は簡単にならないが、Linuxでネイティブに使えると使えないのとでは大きな差がある。

9月15日ごろにZFS Linuxカーネルモジュールが公開される可能性があることがPhoronixの記事Native ZFS Is Coming To Linux Next Monthで報告されている。KQ Infotechというインドの会社が開発しているというもので、次のような特徴があるという。

  • ZFS Pool 18をベースにしている (de-duplicationなど18より後の最新機能はなし)
  • CDDLのもとでソースコードの状態で配布。Linuxカーネルには統合しない。
  • Fedora 12 / RHEL 6 beta 2 (64ビット版)に対してはRPMを提供
  • Ubuntu 10.04 LTS (64ビット版)ではユーザがビルドしてインストールする必要あり。
  • ZFS POSIXレイヤを実装
  • ライセンスコンフリクトが発生するようなGPLオンリーシンボルは使っていない

ZFSのライセンスであるCDDLはGPLと相性が悪い。このため、LinuxカーネルにZFSを統合して配布することができなかった。これまではFUSEと呼ばれるユーザランドでファイルシステムを実現する技術を経由してLinuxでもZFSを利用できたが、FUSEを経由するとパフォーマンスが発揮できないうえ、提供できる機能にも限りがある。

KQ InfotechはLinuxカーネルモジュールとして配布すること、GPLオンリーシンボルの使用を避けること、ソースコードの状態でビルド可能キットとして配布すること、などの工夫をすることでこうしたライセンスの衝突問題を回避。LinuxカーネルにおいてネイティブにZFSを利用できるようにしたという。ブートパーティションも含めてZFSを適用しようとすればそれなりの作業が必要になるが、LinuxでネイティブにZFSが利用できるようになるというのはインパクトが大きい。

KQ InfotechがこのZFS Linuxカーネルモジュールをどういった戦略のもとでリリースし、今後どのような対応を取ってくるかは不透明。無償提供か有償提供か、今後の同社の動向を注目しておきたい。