人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Linuxは1ディレクトリに大体ファイル数を
1万ファイル位(まあ大体5000ファイルでやめたほうが無難かな?)
溜め込めると聞いたのですが
1ディレクトリ内のディレクトリ数の制限はあるのでしょうか?

今、1ディレクトリ内に大体800ディレクトリ作成しようと
思っているのですが、大丈夫でしょうか?

●質問者: hopefully
●カテゴリ:就職・転職 コンピュータ
✍キーワード:Linux ディレクトリ ファイル 作成 大丈夫
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● furutanian
●20ポイント

ここに情報があります。

http://www.linux.or.jp/JF/JFdocs/kernel-docs-2.4/filesystems...

> 一つのディレクトリに 32768 のサブディレクトリの上限があります。

> 現行の単方向リンクのリストによるディレクトリの実装で、一つのディレクト

> リ内のファイル数は、実運用上約 10-15k 個が上限になります。この制限はこ

> のような大きなディレクトリ内のファイルを作成および削除 (さらに検索) す

> る時のパフォーマンスの問題のためです。

実用上、15000 までは OK との見解ですね。

◎質問者からの返答

なるほど。32768 ということは

800位なら作成しても良さそうですね。


2 ● くまっぷす
●20ポイント

http://www.linux.or.jp/JF/JFdocs/kernel-docs-2.4/filesystems...

ファイルシステムがext2(ext3も同じ)の話でちょっと古いんですが、

一つのディレクトリに 32768 のサブディレクトリの上限があります。

ので800ぐらいなら平気でしょう。

◎質問者からの返答

なるほど。大丈夫ですね。

ありがとうございます。

サブディレクトリの場合だけですよね?

サブディレクトリのサブディレクトリとかは

また32768 のサブディレクトリを作成できるのだろうか?


3 ● mass3
●25ポイント

サブディレクトリは 32768 個までです。800個なら問題ありません。ファイルも1万なら問題なく使えます。1万5千を超えると性能が悪くなります。

http://www.linux.or.jp/JF/JFdocs/kernel-docs-2.4/filesystems...

(JFより)

一つのディレクトリに 32768 のサブディレクトリの上限があります。

現行の単方向リンクのリストによるディレクトリの実装で、一つのディレクト

リ内のファイル数は、実運用上約 10-15k 個が上限になります。この制限はこ

のような大きなディレクトリ内のファイルを作成および削除 (さらに検索) す

る時のパフォーマンスの問題のためです。ディレクトリインデックスのハッシ

ング (開発中) を使用すれば、パフォーマンスの問題なしに一つのディレクト

リに 100k-1M+ 個のファイルが置けます (この時には RAM サイズが問題にな

ります)。

◎質問者からの返答

ありがとうございます。

サブのサブってどうなるんでしょうね?


4 ● kurukuru-neko
●10ポイント

ファイル数が千以下であれば何も問題がありません。

おおよそのファイル数とファイルサイズがわかって

いる場合、実際に作ってみた方がよいと思います。

OSは問題がなくても、アクセスの方法によっては

速度が遅すぎて使えない場合もあります。

評価基準を決めてデータを作成して

ext2(ext3) , reiserfs,JFS,XFSあたりのファイル

システムでベンチマークをすることをお勧めします。

Linuxファイルシステム技術解説

http://www.atmarkit.co.jp/flinux/index/indexfiles/linuxfsind...

◎質問者からの返答

ありがとうございます。


5 ● mass3
●25ポイント

「単方向リンクのリストによるディレクトリの実装」は1:Nを表現します。したがって、サブディレクトリのサブディレクトリは 32768 個までです。そしてトータルのファイルの個数は inode の個数に依存します。

◎質問者からの返答

なるほど、ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ