Computer help - file server


[ Blog ] - [ File Server ] - [ Удаленная компьютерная помощь ]

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

Будем надеяться, что вы столкнетесь только с множеством простых исправлений, но мы подготовим вас и к менее простым, гарантированно работающим исправлениям.

Почему длина имени файла даже является проблемой в Windows?

Длинная история имен файлов является проблемой для таких операционных систем, как Windows. Было время, когда имена файлов не могли быть длиннее 8 символов плюс 3-символьное расширение файла.Лучшее, что вы могли сделать, это что-то вроде myresume.doc. Это ограничение было связано с конструкцией файловой системы.

С выходом новых версий Windows дела пошли лучше. Мы перешли от старой ограниченной файловой системы к так называемой файловой системе новой технологии (NTFS). NTFS привела нас к тому моменту, когда имя файла могло быть длиной 255 символов, а длина пути к файлу потенциально могла достигать 32 767 символов. Так как же мы можем иметь слишком длинные имена файлов?

В Windows есть вещи, известные как системные переменные.Это переменные, от которых зависит работа Windows, потому что Windows всегда будет знать, что означают переменные и где они находятся, даже когда мы перемещаем биты и байты повсюду. Системная переменная MAX_PATH - это та, которая ограничивает имена файлов и пути к файлам до 260 символов.

Как переменная, вы думаете, что мы можем ее изменить. Нет, не надо. Это все равно, что выдергивать нитку из свитера. Как только одна системная переменная изменяется, другие системные переменные и компоненты, зависящие от них, начинают распутываться.

Как же тогда это исправить? Простое исправление

Если вам повезет, вы получите сообщение об ошибке и точно знаете, какое имя файла вызывает проблему. Или хотя бы где найти файл. Возможно, у вас есть имя файла, которое выглядит примерно так: C: \ User \ guymc \ Documents \ My Resumesresumewithanamesolong, что вызывает проблемы и становится частью некоторых парней статьи на webhowdoyoulikemenow.docx

Очевидно, кто виноват в данном случае. Найдите файл в проводнике Windows или проводнике, как он называется в Windows 10, щелкните по нему один раз, нажмите F2, чтобы переименовать его, и измените это глупое имя файла на более разумное.Задача решена. Менее простые решения

Не всегда так просто решить эту проблему. Иногда вы не можете изменить имена файлов или каталогов по какой-либо причине.

Следующие ниже решения помогут вам. Это несложно. Перемещение, удаление или копирование файлов или каталогов с помощью PowerShell

Иногда вы получаете сообщение об ошибке при попытке переместить, удалить или скопировать каталоги, в которых количество символов в пути к файлу превышает 260.

Обратите внимание, что слова "каталог" и "папка" взаимозаменяемы.В дальнейшем мы будем использовать «каталог». Следующие командлеты PowerShell также можно использовать с файлами.

Возможно, путь к файлу выглядит примерно так: C: \ Users \ guymc \ Documents \ This \ Is \ Exactly \ The \ Precise \ Directory \ Path \ That \ I \ Need \ To \ Have \ To \ Keep \ My \ Files \ Sorted \ In \ A \ Manner \ That \ Makes \ Sense \ To \ Me \ So \ Lets \ Pretend \ This \ Is \ An \ Actual \ Filepath \ That \ You \ Might \ Также \ Have \ На \ Your \ Windows \ Computer \ And \ Not \ Over \ Think \ It \ Document.docx

Длина пути к файлу составляет 280 символов. Поэтому мы не можем скопировать каталог оттуда в другое место с помощью обычного метода копирования-вставки.Мы получаем ошибку "Путь назначения слишком длинный".

Предположим, что по какой-то причине мы не можем переименовать каталоги, в которые вложен файл. Что мы делаем?

Откройте PowerShell. Если вы еще не использовали PowerShell, прочтите нашу статью «Использование PowerShell для домашних пользователей - руководство для начинающих». Однако вы можете выполнить следующие шаги, не читая статью.

Когда PowerShell откроется, вы окажетесь в корневом каталоге своего пользовательского каталога. Предположим, что C: \ Users \ guymc - ваш пользовательский каталог.

Каталог с именем This находится внутри каталога Documents. Чтобы перейти в каталог Documents, мы используем команду DOS cd Documents.

Вы увидите, что подсказка изменится на C: \ Users \ guymc \ Documents. Это хорошо. Мы работаем ближе к каталогам, чтобы упростить задачу. Копирование каталога с помощью Copy-Item

Мы хотим скопировать каталог This и его содержимое в ThatNewFolder. Давайте воспользуемся командлетом PowerShell Copy-Item с параметрами -Destination и -Recurse.

-Destination сообщает PowerShell, где мы хотим разместить копию. -Recurse сообщает PowerShell, что нужно скопировать все элементы внутри в место назначения. При копировании оригиналы остаются там, где они есть, а все новые создаются в месте назначения.

Copy-Item This -Destination ThatNewFolder -Recurse

Перемещение каталога с помощью Move-Item

Допустим, мы хотим переместить каталог This, и все каталоги и файлы в нем в ThatNewFolder. При перемещении оригинал не остается на месте.

Мы можем использовать командлет PowerShell Move-Item с параметрами -Path и -Destination.-Path определяет элемент, который мы хотим переместить, а -Destination сообщает PowerShell, куда мы хотим его.

Командлет поместит This внутри ThatNewFolder. Он также переместит все, что находится внутри этого каталога. Move-Item можно использовать для перемещения файлов или каталогов, и он работает независимо от пути к файлу или длины имени файла.

Move-Item -Path This -Destination ThatNewFolder

Чтобы убедиться, что это сработало, используйте команду cd ThatNewFolder, чтобы попасть в ThatNewFolder. Затем используйте команду dir, чтобы вывести список каталогов в ThatNewFolder.Вы увидите, что этот каталог находится там.

Удалить каталог с помощью Remove-Item

Если мы хотим удалить этот каталог и все в нем, мы используем командлет Remove-Item.

Командлет Remove-Item имеет некоторую встроенную безопасность, которая затрудняет удаление каталога с вещами внутри него. В нашем примере мы знаем, что хотим удалить все, поэтому мы будем использовать параметры -Recurse, чтобы удалить все внутри, и -Force, чтобы сделать это, не спрашивая нас, уверены ли мы в каждом элементе внутри.

Осторожно! Восстановить что-либо удаленное таким образом будет чрезвычайно сложно. Вы можете попробовать методы из раздела Как восстановить случайно удаленные файлы, но не ожидайте многого.

Remove-Item This -Recurse -Force

Вы можете снова использовать команду dir, чтобы убедиться, что он исчез. Сделайте так, чтобы Windows 10 принимала длинные пути к файлам

Если вы знаете, что будете постоянно использовать длинные пути к файлам и длинные имена файлов, вам будет проще заставить Windows работать на вас. Нет смысла использовать PowerShell для повседневной работы.

Есть два способа сделать это. Один предназначен для пользователей Windows 10 Home, а другой - для пользователей Windows 10 Pro или Enterprise. Эти методы могут работать для Windows 8.1 или более ранних версий, но мы не можем этого гарантировать. Заставить Windows 10 Home принимать длинные пути к файлам

Чтобы Windows 10 Home принимала длинные пути к файлам, нам нужно открыть редактор реестра. Если вы раньше не работали в редакторе реестра, будьте осторожны. Случайное удаление или изменение вещей здесь может полностью остановить работу Windows.

Всегда делайте резервную копию реестра перед внесением каких-либо изменений. Узнайте все, что вам нужно знать об этом, в нашем полном руководстве по резервному копированию и восстановлению реестра Windows.

После открытия редактора реестра и создания резервной копии перейдите в папку HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ FileSystem и найдите ключ LongPathsEnabled.

Дважды щелкните LongPathsEnabled. Убедитесь, что в поле «Значение» стоит цифра 1. Щелкните ОК, чтобы сохранить изменение.

Закройте редактор реестра, и теперь вы сможете работать с безумно длинными путями к файлам. Сделайте так, чтобы Windows 10 Pro или Enterprise принимала длинные пути к файлам

Чтобы разрешить Windows 10 Pro или Enterprise использовать длинные пути к файлам, мы собираемся использовать редактор групповой политики. Это инструмент, который позволяет нам устанавливать политики работы Windows на уровне компьютера и пользователя.

У нас есть несколько статей об использовании групповой политики для таких вещей, как отключение или включение параметров Internet Explorer или добавление сообщения на экран входа в систему.

Откройте редактор групповой политики, перейдя в меню «Пуск» и введя gpedit. Наибольшим результатом должно быть изменение групповой политики. Дважды щелкните по нему.

После открытия редактора групповой политики перейдите к Конфигурация компьютера> Административные шаблоны> Система> Файловая система. Там вы увидите политику Включить длинные пути Win32.

Дважды щелкните по нему, чтобы изменить параметр политики. Измените его с Disabled на Enabled, затем нажмите кнопку OK, чтобы зафиксировать изменение.

Политика может вступить в силу не сразу. Однако вы можете принудительно обновить групповую политику. Вот и все

Есть несколько других способов обойти длинные имена файлов и пути к файлам, но мы рассмотрели здесь самые простые и эффективные методы.

.
SETUP UA COMPUTER BLOG