ファイルシステム痛し痒し
ファイルシステムの選択という問題に悩む人は、今の世間ではかなりの少数派なのだろう。今時 FAT と NTFS の選択に悩む人はいないだろうし、Mac 関係者は何も考えずに HFS+ を使っているだろうし。しかし Linux の場合は、これはちょっと悩ましい問題ではある。
Linux 正調のファイルシステム、ということであるならば、現在の選択肢は Ext4 ということになるだろう。ほとんどの人はこの新しいジャーナリングファイルシステムを使用していると思う。しかし、このファイルシステムはまだ枯れ切っていない。技術革新イコール正義、みたいに思われているかもしれないコンピュータの世界では、実はこの「枯れている」という言葉が大きな意味を持つ。ダメな部分があらかた fix されきっている、という意味の「枯れている」という言葉は、魅力として大きいものなのである。
で、僕は現在 Ext4 ではなくて XFS というファイルシステムを使っている。このファイルシステムは旧 SGI が1990年代前半に開発したもので、ジャーナリングファイルシステムと呼ばれる安全性を重視したファイルシステムの中では最も古い、そして最も枯れているシステムのひとつである。このXFS、この 2010 年代になっても性能に優れた部分を数多く有しているということもあって、今使用しているシステムにはこちらを使うようにしてセットアップしたのである。
以前には ReiserFS というファイルシステムを使用していたこともある。これも1990年代半ばに使われるようになったファイルシステムだが、これは実は SELinux との併用が事実上不可能である上に、これの後継になるはずの Reiser4 FS が(コーディングのスタンダードを守っていないからだ、という説と、いやいや政治的な理由なんだよ、という説があるけれど、いずれにしても)未だに kernel tree に merge されていない。OS の動作の土台になるファイルシステムがこれではちょっと怖いので、僕は現在は全く使用していない。
で、XFS を使い始めての感想なのだけど……「ファイルの書き出しが遅い」これにつきる。具体的には kernel の build やそれに伴うファイルの書き出し・削除などをしているとき、とにかく時間がかかるのである。XFS はファイルの保護という観点では優秀なシステムなのだけど、動的性能に関して(悔しいことにこれ以外の点では優秀なだけに)日常レベルでも頭の痛いところである。次回にシステムをリファインするときには、Ext4 に戻すかもしれないが……うーん。困ったものである。今日も kenrel-2.6.33.2 をbuild しているところなのだけど……