2

У меня есть папка, содержащая большое количество файлов на D:\dev\tools\eclipse . Я решил переместить его на диск C: (по тому же пути) для увеличения скорости, поскольку C: SSD.

При перетаскивании отказывается копировать 4 файла с очень длинными именами, говоря, что они слишком длинные.

  • ОС Windows 7 Pro X64
  • C: это SSD 250 ГБ
  • D: на аппаратной карте RAID LSI 9260 с 3 дисками по 2 ТБ, настроенными как RAID-5 (эффективная емкость 3,6 ТБ)
  • Оба C: и D: отформатированы NTFS.

Почему одинаковая длина пути должна быть в порядке на диске RAID, но не на SSD?

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ:

Если я использую пункт контекстного меню "Копировать как путь" (Shift-нажатие правой кнопкой мыши) для файла, на D: он копирует путь с короткими именами 8.3, замененными элементами пути длиннее 8 символов, в то время как на C: он использует полные имена.

Тем не менее, fsutil показывает оба диска с включенными 8.3 именами

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:.

Они одинаково настроены, поэтому остается вопрос, почему Windows будет использовать имена 8.3 в одном, а не в другом.

1 ответ1

4

Сама NTFS имеет максимальную длину пути к файлу 32 767 символов / байт.

Это Windows API, который имеет ограничение в 260 символов (256 символов для пути, плюс 4 символа для буквы диска, двоеточия, косой черты и завершающего EOL/NUL), и, следовательно, системная утилита, которую вы (скорее всего) используете для копирования файлы идут на такую длину, и вот что терпит неудачу.

Для советов о том, как успешно скопировать длинный путь к файлу в Windows, проверьте этот существующий вопрос SU:

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .