Символы Вы не должны использовать в именах файлов:
| ; , ! @ # $ ( ) < > / \ " ' ` ~ { } [ ] = + & ^
Символьные разделители необходимо использовать для создания имен легче читать:
_ - . :
(В некоторых случаях ":" имеет особое значение хотя),
Как Вы предполагаете, это действительно зависит от многих вещей, главным образом тип файловой системы и опции и в некоторой степени версия ядра. В ext2/ext3/ext4 ряду было основное улучшение когда dir_index
опция появилась (некоторое время после первоначальной версии ext3): это заставляет каталоги быть сохраненными как деревья поиска (логарифмический доступ времени), а не линейные списки (линейный доступ времени). Это не что-то, что Вы видите по NFS, но если у Вас есть некоторый контакт с администраторами, можно попросить, чтобы они работали tune2fs -l /dev/something |grep features
(возможно, даже убедите их обновлять?). Только количество вопросов файлов, не их размер.
Даже с dir_index
, 100 000 больших чувств. Идеально, получите авторов программы, которая создает файлы для добавления уровня подкаталогов. Ни для какого снижения производительности я рекомендовал бы предел приблизительно 1 000 файлов на каталог для ext2 или ext3 без dir_index
и 20000 с dir_index
или reiserfs. Если Вы не можете управлять, как файлы создаются, переместите их в отдельные каталоги прежде, чем сделать что-либо еще.