ファイルシステムの制限について
●ファイル・ディレクトリ数の上限
ひとつのディレクトリ直下に格納できる、ファイル・ディレクトリ数については、おそらく上限はない。おそらく、数万・数十万のファイルを同一ディレクトリ内に作成することは可能であろう。ただし、少なくとも UFS (FFS/FFFS)・ext2・ext3 においてはファイル名の探索は線形探索であり、非常に遅い。具体的には、特定のファイルをオープンしたり、タイムスタンプやパーミッションなどの情報を得る (stat(2)) 場合などは、そのディレクトリ内のエントリを 1つずつ順に調べ、一致するファイル名を探し出す必要がある。
現実的には、ひとつのディレクトリに数万〜数十万のファイルを置くと、ls -l の結果を見るだけでそれなりに時間がかかるようになる。ひとつのディレクトリに置くファイルは、多くても 1000個程度にとどめておくことをお勧めする (ちなみに RaiserFS・xfs・jfs などのイマドキなファイルシステムでは、B+-Tree や B*-Tree などの二分木を発展させた管理方法を採用しており、ファイル数の増加はそれほど問題にはならない)。
なお、ファイルシステム全体としては i-node (inode) の数がファイル・ディレクトリ数の上限である。i-node の使用数・未使用数は df コマンドに -i オプションを渡すことで確認できる。
% df -i Filesystem 1K-blocks Used Avail Capacity iused ifree %iused Mounted on /dev/ad0s1a 253678 39866 193518 17% 1040 31982 3% / /dev/ad0s1e 253678 2152 231232 1% 254 32768 1% /tmp /dev/ad0s1f 186444376 39519590 132009236 23% 5528815 18564879 23% /usr詳細は df コマンドを参照。
> コマンド df *i-node 数の上限は UFS (FFS/FFFS)・ext2・ext3 などの古めのファイルシステムであっても 2^32 個 (42億) であるため、現実的には問題になることは少ないだろう。
http://x68000.q-e-d.net/~68user/unix/pickup?%A5%D5%A5%A1%A5%A4%A5%EB%C0%A9%B8%C2%A4%DE%A4%C8%A4%E1
ext3は、third extended file systemの略で、GNU/Linuxで主流のファイルシステムである。ジャーナリングファイルシステムの一つ。 Linuxカーネル 2.4.16より利用が可能になった。
ext3 - Wikipedia
http://japan.cnet.com/blog/neta/2006/08/20/linux1153000_b892/