Яка максимальна кількість файлів, які може містити папка Unix?
Я думаю, це буде те саме, що кількість файлів.
Яка максимальна кількість файлів, які може містити папка Unix?
Я думаю, це буде те саме, що кількість файлів.
Відповіді:
Залежить від файлової системи, http://en.wikipedia.org/wiki/Comppare_of_file_systems
У всіх поточних файлових системах Unix каталог може містити практично необмежену кількість файлів. Тоді як "необмежений" обмежений дисковим простором та індексами - все, що закінчується першим.
З більш старими проектами файлової системи ( ext2 , UFS , HFS + ) речі, як правило, повільно, якщо у вас в каталозі багато файлів. Зазвичай речі починають боліти близько 10 000 файлів. З новішими файловими системами ( ReiserFS , XFS , ZFS , UFS2 ) ви можете мати мільйони файлів у каталозі, не бачачи загальних вузьких місць продуктивності.
Але наявність у каталозі стільки файлів недостатньо перевірена, і є безліч інструментів, які цього не вдається. Наприклад, періодичні сценарії технічного обслуговування системи можуть заграти.
Я щасливо використав каталог з декількома мільйонами файлів на UFS2 і не бачив жодних проблем, поки не захотів видалити каталог - це займало кілька днів.
Залежить від того, з якою кількістю вузлів була створена файлова система. Виконання
df -i
дасть вам кількість вільних вводів. Це практична межа кількості файлів, а отже, може містити каталог.
Я припускаю, що ви думаєте зберегти багато файлів в одному місці, ні?
Більшість сучасних файлових систем Unix можуть розміщувати багато файлів в одному каталозі, однак такі операції, як наступні шляхи, перелік файлів тощо, передбачають лінійний пошук через список файлів і повільніші, якщо список стає занадто великим.
Я, здається, пригадую, що чує, що для більшості практичних застосувань пара тисяч занадто багато Типовим рішенням є розбити групування. Це є,
/some/path/to/dir/a/
/some/path/to/dir/b/
...
/some/path/to/dir/z/
і зберігати свої файли у відповідному під-каталозі відповідно до їх хешу basename
. Виберіть зручний хеш, перший символ може зробити для простих випадків.
Крістіан Цюпіту пише в коментарях, що XFS і, можливо, інші дуже нові файлові системи використовують log(N)
структури пошуку, щоб зберігати вміст каталогів, тому це обмеження значно покращиться .
З коментаря, який ви залишили, я думаю, що вам не дуже важливо, скільки файлів / папок може розміщувати ваш FS.
Ви, мабуть, повинні подумати про використання ModRewrite та перезапис сайту.com/username для site.com/?user= або щось подібного та зберегти всі свої дані в базі даних. Створення однієї папки на користувача, як правило, не потрібно (і це не дуже гарна ідея).
Зважаючи на це, кожна файлова система має обмеження, і df
може сказати вам, скільки входів доступно на кожному розділі вашої системи.