Isso acontece porque os nomes de arquivos com mais de 8 caracteres não são suportados diretamente pelo FAT, mas pela extensão LFN . O FAT é realmente insensível a maiúsculas e minúsculas, é por isso que você não pode criar arquivos x1234567
e X1234567
. No entanto, quando você cria arquivos com nomes longos, são criados nomes de arquivo curtos, além de uma entrada LFN que contém o nome completo.
Assim, quando você cria arquivos x12345678
e X12345678
, esses arquivos recebem nomes curtos como X12345~1
e X12345~2
, que são nomes FAT diferentes e válidos. O Linux tem uma atitude relaxada para verificar a unicidade das entradas do LFN, de modo que você acaba criando duas entradas que são diferenciadas apenas por maiúsculas e minúsculas; algo que o Windows não permitiria. Mas isso é uma limitação (ou melhor, uma característica) do Windows, não do sistema de arquivos FAT.
Sidenote: Aposto que você também pode criar um arquivo chamado CON
no linux em um volume FAT.
Veja documentação do vfat para opções de montagem que definem como o Linux deve funcionar com nomes de arquivos. / p>