Linuxのファイルシステム再考
目次: Linux
せっかくファイルサーバのRAIDを組み直すのだから、使用するファイルシステムも再考することにしました。
こんな話、前にも書きましたね(2009年2月1日の日記参照)。Linuxのファイルシステムは一長一短で選ぶのが難しいのです。
- ext2/ext3
- Linuxのデフォルトだったファイルシステム。枯れていて安定で速度も出る。最大の欠点はfsckが遅すぎること。待てど暮らせど一向に終わらないのです。
- ext4
- Linuxのデフォルトとなる(もうなってるかな)ジャーナルファイルシステム。一応ext3ベースだけど中身がかなり変わっている?安定で速度も出るけど、欠点はやはりfsckが遅い。ext3(数時間)から劇的改善されたext4(数十分)とのことですが、遅い、遅すぎるわ。
- ReiserFS
- Hans Reiserさん作のLinux初のジャーナルファイルシステム。Hansさん逮捕につき、NamesysとSuSEのナイスガイ達がメンテしていたものの、唯一の味方SuSE Linuxに標準ファイルシステムから外され、Linux 2.6.33でロック周りをめちゃくちゃイジられてバグバグになり、もはや死亡寸前?
- XFS
- SGIのジャーナルファイルシステム。SGI IRIXからの移植。シーケンシャルリード、ライトが速い、起動時のチェックもやたら早い。しかしファイル作成は遅い。巨大ファイルを読みながらディレクトリ削除なんて、ハエが止まるレベルの遅さ。
- JFS
- IBMのジャーナルファイルシステム。IBM AIXからの移植&バージョンアップ。AIXのJFSと区別するためJFS2とも呼ばれる。ネット上のベンチマークを見る限り、XFSに似ている、つまりファイル作成が遅いみたい。微妙だ。
- ZFS
- Sunのジャーナルファイルシステム。Sunの自信作だけあって、便利で速いらしい。しかしライセンス非互換&特許問題でLinuxに取り込めない。Fuse経由で使うのはイマイチだし、ネット上のベンチマークを見る限り、やはりXFSレベルのファイル作成スピードらしい。微妙だ。
- NTFS
- Microsoftのジャーナルファイルシステム。仕様は公開されていないはずなのに、カーネルハッカー達により解析され、今やLinuxからread/writeが可能。スゴい。とはいえLinuxで日常的に使うファイルシステムに適しているか?というと疑問符が付く。
- BtrFS
- Oracleのジャーナルファイルシステム。次期Linux標準を目指しスクラッチから作成された。現在も絶賛開発中なので、これからもしばらくUnstable状態が続きそう。大事なデータを置く場所には適さないだろう。
ここしばらくXFSを使ってきたけれど、ファイル削除が遅くてもう我慢ならない。じゃあ代替案は?と考えても、ご臨終寸前のReiserFSも、XFSと性能が似たり寄ったりのJFSも、どちらも微妙極まりないんだよなあ。
ダメ元でJFSにしてみるか、無難にext4にするしかなさそうですね…。