K.Suzukiです。 最近、様々な所でファイルシステムに関する事が賑やかせてるようですけど、 openSUSE のデフォルトファイルシステムを ReiserFS から Ext[2-9] への変更を 提案をした Jeff Mahoney 氏がその経緯を話しているようです。
From the Horse's Mouth http://linux.slashdot.org/comments.pl?sid=200813&cid=16444091 http://linux.wordpress.com/2006/09/27/suse-102-ditching-reiserfs-as-it-defau...
slashdot に書かれている方を要約すると、 1) その決定は、Hans 氏の状況とは関係ない。自分の提案は、技術的、メンテナンス上 の理由から来たものである。けど不運にもそのタイミングは悪かった。 2) SUSE は reiser3 のサポートを落として*無い*。この変更はデフォルトに影響する だけです。 私たちは4つの主要なファイルシステムをサポートしてます: ext3, reiserfs, xfs, ocfs2 ユーザは、自由にファイルシステムを選べます。 3) 多くのベンチマークでは、reiser3 が ext3 よりも良い結果を見せている。 これはほとんど真実です。これらのベンチマークで見せてないのは、 並列で2つ以上の reiser3 ファイルシステム上で操作した場合に BKL (Big Kernel Lock?)を使用してる事によりパフォーマンスが悪くなることです。 Ext3(他のファイルシステムも)では、同じケースだとそのように悪くならない。 さらに Ext3 のロックの粒度が良いとのレポートも読みました。 reiser3 は何年もうまくこなしてきたが、時代を感じさせます。reiser3 の基本的 考えは未だに合理的です。問題なるのは、ディスクフォーマットが変更される事と 現在使用されている良いコードを捨て去る程の巨大な変更です。 そして、linux.wordpress.com に書かれているのをざっと訳すと、 その見出しはちょっと誤解しています。私が引用したメールは告知では無く提案でした。 私達の変更がコミュニティの視点から見るとどうなのかを知りたかったのです。 そしてその提案はうまく受け入れられた。しかし、私達はデフォルトファイルシステムの 変更を openSUSE 10.3 まで待つつもりです。 この提案は全然 Hans と関係がありません。私達は、彼と適切な関係を保ってました。 タイミングが偶然であっただけで、その動機づけは無関係です。 この記事にポストされたコメントのように、私が受信したほとんど共通の返答は、 「何故 XFS では無いのか?」でした。この背景にある理由は、ちょっと簡単な事です。 XFS も良いファイルシステムです。しかし、ext3/jbd よりももっと複雑です。 コード量はほぼ6倍で、中間層にある Linux->IRIX 互換層がかなり読みにくくなっています。 そして、XFS 開発コミュニティは比較的小さいです。reiser3 から切替える提案の 理由の1つがコミュニティサポートの大きさであることから、XFS に切替えるようには 発言しないでしょう。 これは単なるデフォルトファイルシステム変更の提案です。私達は reiser3 のサポー トを落としてはいません。ファイルシステムに対して複数のオプションを持つことは 重要です。 reiser3 はたくさんの小さなファイルを操作する事においては素晴らしいです。 しかし、ストリームメディアや高度な並行処理で問題に陥ることがあります。 David Chinner は、今年の OLS で XFS がどのくらい高帯域、高並列、ストリーム メディアワークロードをスケールできるか見せました。そのワークロードが XFS の スイートスポットです。しかし、その他のエリアでは問題を持つことになります。 reiser3 ではうまく操作できる小さいファイルの巨大なツリーを削除している間でも XFS ではメモリを使い果たします。しかし大部分のユーザには一般目的においての ファイルシステムの選択は重要では無いです。例えば、ノートブック、デスクトップ PC もしくはスモールサーバー、それらは綿密にファイルシステムを選択する程の特化する ワークロードにはなりません。ベンチマークはあるファイルシステムを強調させるでし ょう。しかし、平均的なユーザはそのような究極的なワークロードにならないでしょう。 私がデフォルトファイルシステムに ext3 を提案した理由が複数あります。 それは、汎用目的ファイルシステムとしてうまく実行できていること。 そして、サポートための顕著なセット、リカバリーやデバッギングツールを 持っていること。ユーザは ext2 から ext3 に簡単にアップデートできました。 同様に ext4 へのアップデートは、簡単になるように計画されています。 reiser3 から reiser4 への切替えは、アップグレードでは無く、 バックアップーリストア作業になります。ext3は、ユーザーに見通しがきくような 発展のアップグレードパスを与えています。しかしながらもっとも重要なのは、 それほどに複雑ではなく、いたる所で使われていて、内部の動きを理解している人が 非常に多くいることです。 以上が自分がざっと訳した物です。 個人的には Ext4 にも注目してたりしてるので、状況によって使い分けていこうと 思っているんですけど...