Назад | Перейти на главную страницу

Ограничение длины пути к файлу Windows при миграции пользователей с Mac на Windows

Мы находимся в процессе миграции пользователей с OSX на Windows 10. На Mac у пользователей никогда не было ограничений на длину их путей, поэтому со временем они создали множество структур файлов / каталогов, которые превышают максимально разрешенный в Windows.

В будущем пользователям придется иметь дело с этим (глупым) ограничением, которое Windows по-прежнему налагает в 2017 году. Но на данный момент большая проблема заключается в том, что мне нужно перенести их данные со старого Mac на новый ПК. Я получаю сообщение об ошибке, когда Windows находит файл со слишком длинным путем.

Я включил политику GPO включить длинные пути win32, но это не помогает. Я думаю, что Microsoft исправила Windows API, но не свои приложения, такие как Windows Explorer.

Я нашел TLPD утилита. Он сканирует дерево файлов и сообщает о файлах, длина которых превышает максимально допустимую. Затем пользователь должен переименовать или удалить свои файлы. Очень много времени!

Я также нашел Фиксатор длинного пути утилита. Предполагается, что это позволит копировать файлы со слишком длинным путем, но я не смог его использовать. Он медленный и в конце просто вылетает.

У вас есть лучшие решения?

Я бы попробовал использовать robocopy для передачи, как правило, это ограничение хорошо обходится. Просмотрите, когда вы закончите, чтобы увидеть, не обрезались ли автоматически какие-либо имена.

https://technet.microsoft.com/en-us/library/cc733145(v=ws.11).aspx

Вы также захотите убедиться, что проводник и приложения могут нормально работать с файлами большей длины, прежде чем запускать его на Mac.

Редактировать: Что касается доступа к этим файлам после того, как они скопированы ... это ограничение Windows API срабатывает. Если они относительно редки, вы можете использовать префикс расширенной длины или замену, чтобы перейти на эти пути ...

https://msdn.microsoft.com/en-us/library/aa365247(v=vs.85).aspx#maxpath

https://technet.microsoft.com/en-us/library/bb491006.aspx

Если они достаточно распространены, и ручные обходные пути становятся проблемой, я бы предложил попробовать параметр / FAT в работе Robocopy. Я никогда не использовал его, но, похоже, он использует схему именования 8.3, которая может автоматически обрезать эти пути для вас; не уверен, что это вызовет другие проблемы. Другой вариант: если на этих машинах установлена ​​Windows 10, вы можете включить раздел реестра, чтобы обойти ограничение в проводнике (см. Статью MSDN выше).