Comprimento do caminho OK na unidade D:, mas muito longo para a unidade C: com ambos NTFS?

Comprimento do caminho OK na unidade D:, mas muito longo para a unidade C: com ambos NTFS?

Eu tenho uma pasta contendo um grande número de arquivos em D:\dev\tools\eclipse. Decidi movê-lo para o meu C:drive (no mesmo caminho) para ganhar velocidade, já que C:é um SSD.

O movimento arrastar e soltar se recusa a copiar 4 arquivos com nomes muito longos, dizendo que são muito longos.

  • O sistema operacional é o Windows 7 Pro X64
  • C:é um SSD de 250 GB
  • D:está em uma placa RAID de hardware LSI 9260 com 3 unidades de 2 TB configuradas como RAID-5 (capacidade efetiva de 3,6 TB)
  • Ambos C:e D:são formatados como NTFS.

Por que o comprimento do caminho idêntico estaria OK na unidade RAID, mas não no SSD?

INFORMAÇÕES ADICIONAIS:

Se eu usar o item de menu de contexto "Copiar como caminho" (Shift-clique com o botão direito) no arquivo, ele D:copiará um caminho que possui 8,3 nomes curtos substituídos por elementos de caminho com mais de 8 caracteres, enquanto C:usa os nomes completos.

No entanto, fsutilmostra ambas as unidades com nomes 8.3 habilitados

C:\Windows\system32>fsutil 8dot3name query c:
The volume state for Disable8dot3 is 0 (8dot3 name creation is enabled).
The registry state of NtfsDisable8dot3NameCreation is 2, the default (Volume level setting).
Based on the above two settings, 8dot3 name creation is enabled on c:.

C:\Windows\system32>fsutil 8dot3name query d:
The volume state for Disable8dot3 is 0 (8dot3 name creation is enabled).
The registry state of NtfsDisable8dot3NameCreation is 2, the default (Volume level setting).
Based on the above two settings, 8dot3 name creation is enabled on d:.

Eles são configurados de forma idêntica, então ainda resta a questão de por que o Windows usaria nomes 8.3 em um, mas não no outro.

Responder1

O próprio NTFS tem um comprimento máximo de caminho de arquivo de 32.767 caracteres/bytes.

Isso éa API do Windows que tem um limite de 260 caracteres(256 caracteres para caminho, mais 4 caracteres para letra de unidade, dois pontos, barra e EOL/NUL final) e, portanto, o utilitário do sistema que você está (provavelmente) usando para copiar os arquivos tem esse comprimento e é isso que é falhando.

Para obter sugestões sobre como copiar com êxito um longo caminho de arquivo no Windows, verifique esta pergunta SU existente:

informação relacionada