Uma resposta aceita no ServerFault por Ignacio Vazquez-Abrams diz
Provided you have a distro that supports the dir_index capability then
you can easily have 200,000 files in a single directory. I'd keep it
at about 25,000 though, just to be safe. Without dir_index, try to
keep it at 5,000.
O que eu considero como sugerindo
./000/file000000 to ./000/file000999
./001/file001000 to ./001/file001999
...
./999/file999000 to ./999/file999999
O tamanho de uma estrutura de diretórios nunca diminui, portanto, se um diretório já contiver tantos arquivos que ele cresceu para um tamanho ineficiente, excluir ou mover arquivos desse diretório não melhorará o desempenho desse diretório. Então sempre comece com novos diretórios (se necessário, renomeie diretórios grandes, crie novos diretórios, mova arquivos, apague diretórios antigos)
Respostas a outra pergunta do Stackoverflow diz
Nowadays the default is ext3 with dir_index, which makes searching
large directories very fast.
Um comentarista diz
There is
a limit of around 32K subdirectories in one directory in ext3, but
the OP is talking about image files. There is no (practical?) limit on
files in an ext3 file system with Dir Index enabled.
Acho que executei alguns testes para ver se a organização de arquivos em subdiretórios valeu a pena para algo diferente de ls
performance. Regras gerais de otimização: 1 não, 2 realmente não, 3 medidas.