Перейти к основному содержанию

xcopy — ошибка "Insufficient memory"

Windows Terminal cmd

Иногда при копировании с помощью xcopy вы можете натолкнуться на ошибку "Insufficient memory". Я такую ошибку увидел, когда стал разбираться с размером бэкапа сайта. Оказалось, что в какой-то момент времени бэкап сломался из-за этой ошибки.

xcopy

Несмотря на то, что текст ошибки переводится как "Недостаточно памяти", к оперативной памяти ошибка не имеет отношения. На сайте Microsoft подсказывают, что дело в слишком длинном полном пути к файлу, если он превышает 254 символа.

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

xcopy

Один из способов избавиться от проблемы — не использовать файлы такой длины. Это чудесно, но не решает проблему. Не все файлы можно удалить или переименовать. И мы не застрахованы от появления новых файлов с большим названием. Да и с удалением таких файлов могут возникнуть проблемы:

Windows — удалить файл с длинным именем

Второй способ — вместо xcopy применить robocopy. Если вы ранее использовали дополнительные опции xcopy, то их придётся заменить на другие, которые поддерживает robocopy.

Удаляю старую команду:

xcopy %SourceDir% %FullBackupDir%

И вставляю новую:

robocopy %SourceDir% %FullBackupDir%

Вот мой новый скрипт для резервного копирования папки:

BAT скрипт для резервного копирования папки

Проверяйте бэкапы!

Теги

 

Похожие материалы

Объединяем разделы на флешке

Иногда возникает ситуация, когда на флешке образуется несколько разделов. В Linux, например, это в порядке вещей. В Windows флешка начинает вести себя как несколько устройств. Через GUI объединить разделы не удаётся. Решаем проблему на месте подручными средствами.

Теги

BAT скрипт для резервного копирования папки

Набросал один маленький BAT скрипт для резервного копирование папки. Внесите свои данные и через scheduler настройте расписание резервного копирования.

Теги