読者です 読者をやめる 読者になる 読者になる

32bit LinuxでXFSを使うとiノード絡みのバグに遭う可能性がある

Linux バグ・不具合 Ubuntu

Ubuntu 13.04 32bitでGeanyを使って、XFSなパーティションにあるhtmlファイルを開こうとしたら、

定義されたデータ型に対して値が大きすぎます

というエラーが表示されて開けなかった。
そのファイルをstatした結果を眺め、inodeの値が超大きいことに気づいた瞬間、以前遭遇したバグのことを思い出した。

どうやらGeanyが使用しているライブラリか何かが、32bit環境で64bit長のinodeを扱えないらしい。
普段常用しているアプリでUINT_MAXを超えるinodeのファイルを開けるか確認したら↓こうなった。

アプリ成否備考
LeafpadGTK+2
ViewniorGTK+2
Geany×GTK+2
GnuCash×GTK+2
VLCQt4
eogGTK+3
geditGTK+3
自作アプリ1×mono
自作アプリ2Java
Linux Kernel 3.7から32bitでもinode64がデフォになったので、気軽にお目にかかれるバグだと思う。
それはそうと、もうすぐ発売のUbuntu Magazine Japan 2013 Summerには日本語Rimixの64bit版が収録されているらしい。