Главная » Windows » Если не удаляется файл с длинным именем и появляется ошибка, что файловая система не поддерживает такие длинные имена?
Длинный у нас получился заголовок получился, но он указывает на суть проблемы, которая будет здесь описана. Недавно я столкнулся с не очень хорошей ситуацией. Сортируя файлы на жёстком диске и очищая его от ненужного, я обнаружил, что один из файлов не удаляется, а появляется ошибка следующего содержания: «Файловая система не поддерживает такие длинные имена исходных файлов. Попробуйте перенести файл в папку с меньшей длиной пути или укажите более короткое имя файла и повторите попытку».
Я не только не мог удалить файл, но еще и изменить имя на более короткое имя тоже не удалось. Для многих это показалось бы тупиком, ведь получается, что файл не удаляем.
На самом деле проблема решается очень просто и быстро, и сейчас я опишу два метода её решения, а каким пользоваться решать только вам.
Что делать, если слишком длинный путь к источнику, как удалить такой файл?
При наличии файла, который не удаляется из-за длинного имени, решить проблему можно несколькими вариантами. Например, файл вложен в несколько каталогов, допустим, пять или даже десять папок, которые имеют названия по 10-20 знаков, то это и может быть причиной не удаления файла. Дело в том, что Windows не поддерживает любые файлы, в названиях которых больше 260 символов. Если этот предел превышен, то появится ошибка, которую я показал выше. Количество папок, имеющие свои названия и само имя файла в сумме должны давать менее 260 символов. В системе также есть одна особенность – при превышении этого ограничения мы всё-таки можем переименовывать папки. А это значит, что необходимо переименовать все папки на короткое имя, например, буква или цифра.
Такая проблема может появиться не только из-за того, что вы дали такое длинное название. У меня это произошло тогда, когда я решил загрузить себе файлы сайты с сервера и кое-что сделать. Так как файлы уже были не нужны, я удалил весь каталог с файлами сайта, но как оказалось он содержал файл с очень длинным именем, плюс названия папок и это не дало мне всё это удалить.
По теме: Как обойти ограничение на длину в 260 символов в Windows 10
Метод второй поможет, если с первым не удалось. Дело в том, что не все папки, ведущие к файлу с длинным именем, могут переименовываться и будет вылетать всё так же ошибка файловой системы. Тогда вы можете создать виртуальный диск, используя любую из вложенных папок, ведущих к не удаляемому файлу. Сейчас я покажу, как это сделать.
Открываем командную строку. Для этого нажимаем сочетание Win+R и вводим команду cmd. Можно нажать правой кнопкой мыши по меню Пуск (Либо сочетание клавиш Win+X) и выбрать там командную строку.
Теперь вы пишите такую команду, которая сделает для нас виртуальный диск:
subst буква-диска «путь к файлу или папке – это и будет диском»
Нужно выбрать такую букву диска, которая не занята другими. Системный раздел обычно указывается буков C, а второй раздел, как D или E, тогда выбираем любую другую.
Путь к папке нужно указывать от диска. Если у вас это вызывает сложность, то откройте ту папку, которая будет выступать в качестве виртуального диска и в проводнике вверху скопируйте путь до неё.
У меня эта команда выглядит следующим образом:
subst Z: «C:UsersUserDesktop3333333333333333333333333333333333333333333333333333111»
Когда мы зайдем в Мой компьютер, то там вы должны увидеть диск, с той буквой, которую мы ей присвоили из командной строки. Таким образом, путь к файлу сократиться практически в два раза, а это значит, что общая длинна символов может составлять менее 260 знаков. Теперь вы можете попробовать избавиться от неудаляемого.
Для того, чтобы виртуальный диск удалить нужно ввести команду:
Используем Total Commander
В интернете я обнаружил метод, который позволяет удалить не удаляемые файлы при помощи утилиты Total Commander. Конечно, минус тут в том, что придётся устанавливать дополнительный софт на компьютер, а это не все захотят делать. В любом случае оставлю этот способ здесь, вдруг кто захочет воспользоваться.
Скачиваем и устанавливаем программу. Идём во вкладку «Файл» щелкаем по разделу «Изменить атрибуты». Появляется окошко, где убираем галки со всех атрибутов. Если вверху не стоит галочка напротив пункта «Обрабатывать содержимое каталогов» – выбираем. Теперь из этой же программы пробуем удалить файл с длинным именем.
Используем архиватор 7-Zip
Для этого дела нам понадобится архиватора 7-Zip. Нажимаем правой кнопкой мыши по начальному каталогу и направляем мышь на раздел «7-Zip» и выбираем пункт «Добавить к архиву».
Появляется окно, в котором вам нужно отметить только одну галочку «Удалять файлы после сжатия». Потом нажимаете ОК.
Это интересно: 7-Zip, как альтернатива WinRAR
На рабочем столе создаётся архив всего этого добра, а папки с длинным файлом просто удаляются. Сам же архив вы можете удалить без проблем.
Вот такие способы по исправлению ошибки не удаляемого файла мы рассмотрели. Может быть у вас есть еще варианты, как можно это сделать?
( 26 оценок, среднее 4.69 из 5 )
В данной статье я хочу поделиться с вами парочкой способов решений одной проблемы в Windows, с которой уже несколько раз сталкивался сам. Проблема заключается в том, что Windows не даёт возможность удалить файл или папку с очень длинным названием, а конкретно — путь к которым слишком длинный и превышает размер в 260 символов. При попытке удалить такой файл или папку, вы получите сообщение: «Файловая система не поддерживает такие длинные имена исходных файлов». Такая ситуация может возникнуть, например, тогда, когда у вас сложная структура папок в виде большой «матрёшки». К примеру, в одной папке есть другая папка, в ней в свою очередь ещё одна папка, в ней ещё одна и так далее. И в самом конце этого пути, в последней папке лежит нужный файл. Так вот, если в сумме все названия этих папок по количеству символов превысят 260, то в итоге система не даст вам удалить одну из папок или сразу несколько в самом конце этой «матрёшки» А если проблема конснулась файла, только вы его и открыть не сможете, переименовать или даже скопировать. Проще говоря, такой файл будет недоступен!
Вот пример структуры папок, которую я назвал «большой матрёшкой»:
Как видим, на диске «D» (Данные) есть исходная папка видео, в ней папка «Фильмы», в ней «Всё что нужно для просмотра фильмов» и далее таким же образом папка в папке. При этом многие папки имеют длинные названия названия — больше 10-15 символов, что в сумме даст объём символов во всех названиях больше 260. И если в конце такой «матрёшки» будет лежать файлик, то может получиться так, что работать с ним вы не сможете… Иногда сама система не даёт создать в конечном итоге папку или файл превышающий допустимое количество символов, но иногда почему-то такое происходит.
В начале для новичков поясню, что такое путь к файлу и папке. Путь – это так называемый адрес в компьютере, по которому располагается файл или папка. Например, файл под названием «Мой файл.txt» лежит на локальном диске D: в папке «Документы». Тогда путь к этому файлу будет выглядеть так:
D:ДокументыМой файл.txt
Или, например, вот так будет выглядеть путь из примера выше, где я показал сложную структуру папок.
D:ВидеоМои фильмыВсё что нужно для просмотра фильмовПрограммы для просмотра фильмовКак открывать фильмы MP4Список фильмов-примеров MP4Перечень программ для открытия MP4Что нельзя делать при открытии файлов MP4
Как видно, количество символов в пути выше велико и не исключено то, что в конце будет лежать файл или папка с длинным названием, который вы не сможете удалить.
При попытке удалить файл с длинным названием пути к нему, вы получите окно с ошибкой такого рода:
Я попробовал искусственно воссоздать проблему и вот что у меня получилось.
На диске «D» создал папку коротким именем «1» и в неё поместил файл с очень длинным названием. Вот пример:
Теперь я ту папку «1» переименовываю тоже в какое-то очень длинное название, например:
Что интересно, Windows свободно даёт переименовать папку вот в такое длинное название, несмотря на то, что количество символов в названии этой папки + названии файла уже превышает 260! Ну и после такого вот переименования папки в длинное название, я уже не могу удалить файл, расположенный в ней и получаю ошибку, показанную выше на изображении.
Или вот ещё пример… Я обслуживаю сайт Московского приборостроительного техникума, в котором ранее работал на полную ставку и иногда для тестирования каких-то новых «плюшек» для сайта использую копию сайта на своём компьютере. А то вдруг я что-то нехорошее установлю и сайт на хостинге умрёт? А так я у себя на компьютере проверяю и если всё в порядке, то уже настраиваю на реальном сайте, расположенном на хостинге. Так вот, один раз я перенёс себе с хостинга весь сайт чтобы протестировать одну вещь и после того как закончил работать, решил удалить с компьютера папку с сайтом. Ведь весит она порядке 6 Гб. Сайт удалился весь, кроме ряда папок. Я начал смотреть и увидел, что не удалились те папки, которые содержали в себе файл с длиннющим названием в виде иероглифов:
Попытался ещё раз удалить этот файл с длинным названием и увидел туже ошибку, о которой выше упоминал. Попробовал переименовать, тоже не получается. Ну и пришлось думать над тем, как проблему решить.
Как решить проблему удаления папки / файла с длинным названием пути!
Я пробовал 2 способа как можно удалить папку / файл с длинным названием в пути к ним. Оба они технически не сложные (особенное 1-й), поэтому, думаю, сможет справиться новичок если выполнит всё точно также как я показываю:
-
Переименовать несколько папок в пути к файлу в более короткое название. Это самое простейшее решение, которое уже должно многим помочь! Предположим у вас в папке с очень длинным названием лежит файл, который вы не можете удалить, открыть, скопировать, да и вообще работать с ним не можете.
Тогда попробуйте просто переименовать папку, в которой лежит файл с длинным названием, например, в «1». Вернусь к одному из примеров выше. Вот имеется папка с длинным названием:
Переименовываю через стандартный проводник Windows название той папки в «1» и вот как теперь выглядит путь к файлу:
Теперь, с файлом можно спокойно работать, система даст его открыть, переименовать и удалить.
Если же у вас длинное дерево папок, т.е. как матрёшка, в одной папке другая, в ней ещё, потом ещё, то переименовывать начинайте с самой первой папки из этой матрёшки. Не с последней по списку, а с первой!
-
Может быть так, что папок огромное количество и переименовать какие-то из них не получится из-за той же ошибки или это займёт у вас много времени. В таком случае предлагаю второй способ.
Способ заключается в том, что вы можете взять какую-то папку, например, в середине общего дерева и подключить её в виде виртуального диска. Виртуальный диск – это то, что напоминает нам обычный локальный диск, но который просто привязывается к определённой папке, например, для быстрого взаимодействия с ней.
Допустим у вас есть примерно такой вот длинный путь:
D:ВидеоМои фильмыВсё что нужно для просмотра фильмовПрограммы для просмотра фильмовКак открывать фильмы MP4Список фильмов-примеров MP4Перечень программ для открытия MP4Что нельзя делать при открытии файлов MP4
Предположим, что в самой последней папке у нас лежит какой-то проблемный файл, с которым мы не можем работать, поскольку путь к нему, как видим, весьма приличной длинны
Мы можем взять и подключить одну из папок с длинным названием в середине пути в качестве виртуального диска. Пусть это будет папка «Программы для просмотра фильмов».
Для подключения виртуального диска нам понадобится так называемая командная строка Windows, т.е. консоль.
Открыть её можно через поиск Windows. В поиске так и наберите «Командная строка»:
В окне командной строки нам нужно набрать команду:
subst буква_виртуального_диска «путь_к_папке»
Букву диска вы можете поставить любую, только чтобы она уже не была занята одним из локальных дисков. Например, у вас есть локальный диск C и D, а значит виртуальный диск вы уже не сможете обозвать той же буквой. Можно назвать, например, буквой «X», потому что она редко у кого используется в Windows.
В качестве пути к папке вы вставляете путь к той папке, которую хотите подключить как виртуальную. Как я уже говорил, в моём примере виртуальной папкой сделаем «Программы для просмотра фильмов», а значит путь нужно указать вот такой:
D:ВидеоМои фильмыВсё что нужно для просмотра фильмовПрограммы для просмотра фильмов
Итак, итоговая команда в моём случае будет выглядеть вот так:
subst X: «D:ВидеоМои фильмыВсё что нужно для просмотра фильмовПрограммы для просмотра фильмов»
Чтобы выполнить введённую команду, нажимаем клавишу «Enter» на клавиатуре. Виртуальный диск будет создан.
Теперь перейдём в проводник Windows, зайдём в раздел «Этот компьютер» (или «Компьютер») и видим там созданный виртуальный диск:
Отличить его можете по букве. Я присваивал букву «X» виртуальному диску. Теперь если открыть этот виртуальный диск, то мы сразу окажемся в папке «Программы для просмотра фильмов». Т.е. мы взяли и срезали нафиг половину пути к конечной папке.
Для сравнения…
Ранее путь к конечной папке выглядел так:
D:ВидеоМои фильмыВсё что нужно для просмотра фильмовПрограммы для просмотра фильмовКак открывать фильмы MP4Список фильмов-примеров MP4Перечень программ для открытия MP4Что нельзя делать при открытии файлов MP4
После подключения виртуального диска к папке «Программы для просмотра фильмов» путь к конечной папке выглядит так:
X:Как открывать фильмы MP4Список фильмов-примеров MP4Перечень программ для открытия MP4Что нельзя делать при открытии файлов MP4
Чувствуете разницу? Путь сокращён в два раза, поскольку буква диска сразу же направляет нас к папке в средине пути
А поскольку путь сильно сокращён, наверняка теперь вы сняли ограничение по символам в названиях файлов и папок и сможете удалить файл или папку с длинным названием!
После того как проблему с файлом вы решите, виртуальный диск можно снова удалить, чтобы не мозолил глаза в проводнике.
Для этого снова откройте командную строку Windows и введите команду:
Subst буква_виртуального_диска /d
В моём случае буква диска «X», поэтому команда будет выглядеть вот так:
Когда я думал над вариантами решения проблемы, как удалить папку или файл с длинным названием, в интернете находил ещё такой вот вариант: удалить проблемный файл через программу «Total Commander». Попробовал, нифига не получилось, поэтому и советовать такой способ не стал :)) Да и способ, даже если он у кого-то бы и заработал, честно говоря не прикольный, потому что приходится ставить дополнительную программу на свой компьютер ради удаления одного лишь файла или папки с длинным названием…
Я думаю, при возникновении подобной проблемы, которая у меня возникала ни один раз, вам обязательно поможет один из вышеописанных способов.
На этом всё! До скорых встреч в следующих статьях
Слишком длинное имя файла или слишком длинный целевой путь — как исправить?
При копировании, создании, сохранении или перемещении файлов и папок в Windows 11 и Windows 10 на внутреннем HDD или SSD, при копировании данных на внешний диск или флешку, вы можете столкнуться с ошибками вида «Слишком длинный целевой путь. Имена файлов слишком длинны для помещения в эту целевую папку», «Указано неправильное или слишком длинное имя файла» и другие, имеющие отношение к слишком длинным именам или путям к файлам и папкам.
В этой инструкции подробно о том, чем вызваны эти ошибки и как можно их исправить в Windows последних версий, а также дополнительная информация, которая может быть полезной, чтобы решить проблему.
- Слишком длинное имя файла или слишком длинный целевой путь
- Причины ошибки и способы её исправить
- Как включить поддержку длинных путей в Windows
- В редакторе реестра
- В редакторе локальной групповой политики
- Почему ошибка сохраняется при включенной поддержке длинных путей
Причины ошибки «Слишком длинное имя файла» и «Слишком длинный целевой путь» и способы её исправить
Несмотря на то, что файловой системой NTFS длина пути ограничена 32760 символов, в Windows существует ограничение на полный путь в 260 символов, включая путь к папке и имя файла с расширением. Ещё одно ограничение — 255 символов на имя файла или отдельной папки. Схожие ограничения есть для файловых систем FAT32 и ExFAT. Когда полный путь к файлу, с которым вы выполняете действия, превышает указанное число символов, вы можете получить сообщение об ошибках о слишком длинном целевом пути или слишком длинном имени файла.
Отсюда основные способы исправить ошибки, связанные с использованием слишком длинного пути:
- Использовать более короткие имена файлов и более простое и «компактное» дерево папок.
- Включить поддержку длинных путей — такая опция есть в Windows 10 и Windows 11, далее будет рассмотрен порядок действий. Однако, это решит не все проблемы, о чем мы также поговорим.
- Использовать файловые менеджеры, которые могут работать с длинными путями по умолчанию: Total Commander, Files (но для него потребуется включить и поддержку длинных путей в системе) или даже 7-Zip File Manager, который прекрасно с этим справляется.
Как включить поддержку длинных путей в Windows 10 и Windows 11
В зависимости от установленной редакции Windows, можно использовать один из следующих способов включения поддержки длинных путей.
В редакторе реестра
Если на вашем компьютере установлена Windows 11 или Windows 10 Домашняя, используйте редактор реестра для включения опции:
- Нажмите правой кнопкой мыши по кнопке «Пуск» и выберите пункт «Выполнить» или нажмите клавиши Win+R на клавиатуре, введите regedit и нажмите Enter.
- В редакторе реестра перейдите к разделу
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlFileSystem
- В правой панели редактора реестра дважды нажмите по параметру с именем LongPathsEnabled и присвойте значение 1 вместо 0 для этого параметра.
- Закройте редактор реестра, перезагрузите компьютер.
В редакторе локальной групповой политики
В Windows Pro и Enterprise можно использовать редактор локальной групповой политики:
- Нажмите клавиши Win+R на клавиатуре, введите gpedit.msc в диалоговом окне «Выполнить» и нажмите Enter.
- Перейдите к разделу Конфигурация компьютера — Административные шаблоны — Система — Файловая система.
- Дважды нажмите по параметру «Включить длинные пути Win32».
- Установите значение «Включено» для этого параметра, примените настройки.
- Закройте редактор локальной групповой политики и перезагрузите компьютер.
Готово, теперь поддержка длинных путей в Windows включена, однако это не означает, что ошибки, с ними связанные, исчезнут.
Почему ошибки длинных путей появляются, несмотря на включенную поддержку длинных путей
Даже если вы включите поддержку длинных путей к папкам и файлам в Windows 11/10, при действиях с такими файлами в проводнике и некоторых программах вы продолжите получать ошибки вида «Слишком длинный целевой путь. Имена файлов слишком длинны для помещения в эту целевую папку» или «Указано неправильное или слишком длинное имя файла», также будут недоступны некоторые действия в папках, имеющих длинный путь.
Причина этого — поддержка длинных путей требуется не только на уровне системы, но и в самой программе, которая работает с этими путями, в качестве примера:
- Проводник не сможет полноценно работать с длинными путями даже при включенной поддержке.
- Файловый менеджер Files из магазина приложений будет исправно работать, если включить поддержку длинных путей, и будет сообщать об ошибках при отключенной поддержке.
- Total Commander или встроенный файловый менеджер 7-Zip работают с длинными путями независимо от того, включена ли их поддержка в Windows.
То же самое касается не только файловых менеджеров, но и прикладных программ: текстовых, графических и видео редакторов и другого ПО.
Надеюсь, инструкция прояснила причины ошибки и возможные способы решения проблемы. Если же вопросы остаются — жду их в комментариях.
Что значит «Файловая система не поддерживает такие длинные имена исходных файлов» при удалении файла и как это исправить?
Не удаляется файл/папка. Появляется сообщение о длинных именах исходных файлов. Что делать?
У некоторых пользователей достаточно часто при попытке удалить файл или папку появляется сообщение о том, что файловая система не поддерживает такие длинные имена исходных файлов. Далее предлагается перенести файл в папку с меньшей длинной пути или указать более короткое имя файла. Что это такое и как данную ситуацию исправить мы поговорим в данной статье.
Что это значит?
Как можно было понять из текста сообщения, то все завязано на длину имен файлов и папок. Зачастую изменить имя удаляемого файла на более короткое недостаточно. Тут важно обратить внимание на имена всех вложенных папок, которые встречаются на пути к удаляемому файлу, начиная с корня локального диска. Если хоть одна папка в названии имеет более 10 символов, и при этом вложенных папок более 5, то это повод к возникновению вышеописанного сообщения о длинных именах.
Вот так выглядит структура большой вложенности папок с длинными именами
При удалении файла он помещается в корзину. При этом сохраняется путь, по которому он находился до момента удаления, чтобы в случае восстановления его из корзины он оказался там. Путь складывается из имен всех вложенных друг в друга папок. Вот и получается, что из-за большой вложенности папок с длинными именами возникает ошибка при удалении.
Как это исправить?
Здесь все просто. Достаточно переименовать все папки с длинными именами, которые встречаются на пути к удаляемому файлу, на более короткие, желательно 2-ух символьные имена. Имя самого удаляемого файла также желательно укоротить.
Также существует и второй вариант решения данной проблемы. Программа Unlocker. Она удаляет все и вся в пару кликов мышкой без перемещения в корзину.
Окно программы Unlocker – выбор файла или папки для удаления
Лучшая благодарность автору — репост к себе на страничку:
Всем пользователям так или иначе приходилось сталкиваться с так называемыми неудаляемыми файлами и папками. Обычно причина, по которой объект нельзя удалить или переместить заключается в использовании его какими-то процессами, но это также может обуславливаться длиной пути. В этом случае при удалении файла пользователь получает сообщение «Слишком длинный путь к источнику».
Всё дело в том, что файловая система NTFS не поддерживает имена файлов длиной более 255 символов. Ну ведь никто не использует такие длинные имена, почему же тогда система не позволяет удалить файл? А всё потому, что под именем файла или папки Windows понимает весь путь, начиная с корня диска и заканчивая последней вложенной папкой.
Это досадное недоразумение будет устранено в новой файловой системе ReFS, которая в недалёком будущем должна прийти на смену NTFS. Файловая система ReFS поддерживает длину пути в 32767 символов против 255 в NTFS, что позволит создавать и удалять объекты с огромными путями, но это в будущем, а пока что решить проблему можно простым переименованием звеньев пути, то есть папок.
Иногда бывает достаточно переименовать одну папку, чтобы файл стал удаляемым, а в контекстном меню появились соответствующие опции.
Какое имя использовать? Ясно, самое короткое, например, «1» или «а».
Если переименования одной вложенной папки недостаточно, переименовываем следующую и так далее, пока общая длина пути не станет менее 255 символов.
Вот, собственно, и всё.
А теперь внимание.
Не применяйте этот трюк при удалении файлов с системного диска. Переименование папок верхнего уровня, особенно если в них имеются файлы, назначения которых вы не знаете, может привести к неполадкам в работе используемых их программ.
Загрузка…