Невозможно восстановить из Shadow Copy из-за длинного имени файла

18

На нашем сервере Windows SBS 2008 включено теневое копирование. Попытка восстановить файл из теневой копии привела к следующей ошибке:

Имя файла (ов) источника больше, чем поддерживается файловой системой. Попробуйте переместиться в местоположение с более коротким именем пути или попробуйте переименовать в более короткие имена, прежде чем пытаться выполнить эту операцию.

Имя файла содержит 67 символов, а путь теневого копирования - 170 символов. Похоже, что они находятся за пределами NTFS (260?).

Мы старались-

  • Копирование по кратчайшему пути (C :)
  • Копирование по кратчайшему пути, возможному как на клиентском компьютере, так и на самом сервере

Можно ли переименовать файлы в теневой копии, прежде чем делать копию? Любая идея, почему ошибка появляется несмотря на то, что размер имени файла находится в определенных пределах?

Шаги приняты

  1. На локальном компьютере перейдите в общую папку на сервере SBS (через подключенный диск), например, J: \ Projects \ Foo \ Bar
  2. Щелкните правой кнопкой мыши папку и выберите « Свойства».
  3. Нажмите на вкладку Предыдущие версии .
  4. Выберите теневую копию и нажмите Открыть
  5. В открывшемся окне выберите папку / файл и нажмите Ctrl-C для копирования.
  6. Откройте новый проводник Windows и вставьте папку / файл на локальный диск.

Edit- (Un), к счастью, теперь я не могу воспроизвести эту ошибку. Отдельные файлы, вызывающие проблему, были с тех пор удалены и не могут воссоздать ошибку с другими, подобными файлами.

Spongeboy
источник
Можете ли вы указать, где именно вы устанавливаете свои теневые копии, и как вы пытаетесь восстановить их (шаг за шагом)? Я смотрю на это, но мне нужно немного помочь понять, как вы получаете доступ к нему в первую очередь.
Голокриптик
Я добавил шаги, используемые для попытки восстановления. Это единственный метод, который я знаю - есть ли другие?
Губка,

Ответы:

23

У меня была точно такая же проблема в Server 2008 R2, и я решил ее следующим образом:

  1. Щелкните правой кнопкой мыши папку, которую вы пытаетесь восстановить из теневой копии, и выберите « Предыдущие версии» . Выберите дату и нажмите « Открыть» .
  2. Щелкните правой кнопкой мыши любой файл или папку в предыдущей папке и выберите « Свойства» . На вкладке General скопируйте то, что показано в 'location', например: \\localhost\D$\@GMT-2011.09.20-06.00.04\_Data
  3. Откройте cmd.exe и введите:

    subst X: \\localhost\D$\@GMT-2011.09.20-06.00.04\_Data
    
  4. Откройте PowerShell и используйте robocopy для копирования содержимого X: например:

    robocopy Z: D:\Folder\ /E /COPYALL
    
  5. Убедитесь, что все файлы были скопированы.
  6. Когда закончите тип subst X: /D in cmd
Вильхельм
источник
Сделал это и подтвердил, что работает.
Джейк
3
На самом деле, ROBOCOPY не имеет ограничения в 256 символов пути. Может не понадобиться SUBST при использовании ROBOCOPY.
Джейк
Я могу подтвердить, что SUBST не нужен при использовании ROBOCOPY.
Nic
Использование SUBSTполезно, если вам нужен доступ командной строки к содержимому теневой копии и вы не хотите ничего копировать.
Я говорю Восстановить Монику
ты не имеешь в виду "robocopy X:"?
Nullldata
3

Вы пытались поделиться папкой, из которой пытаетесь восстановить? Таким образом, вы можете попробовать открыть \ server \ share \ filename вместо \ server \ share \ path .... \ filename?

Если это не сработает, я бы предложил попробовать получить доступ к томам через командную строку, где вы можете использовать \\?\метод доступа, который имеет ограничение в 32 767 символов .

Zoredache
источник
У меня нет возможности поделиться теневой копией. Когда у меня открыта теневая папка (например, Статистика (вчера, 6 июля 2011 г., 12:00 вечера)), у меня нет возможности поделиться в свойствах папки. В настоящее время я не могу воссоздать проблему, но спасибо за ссылку на доступ к теневым томам через командную строку!
Губка
Отлично, я удалил папку из общей папки \\ computer \ c $ \. Спасибо. +1
Василий Зварыдчук
0

Можете ли вы получить имя / путь к файлу теневой копии из записи «location» вкладки «Общие» в информационном окне «Свойства», а затем с помощью команды «subst» сократить длинный путь до одной буквы?

subst Z: "H: \ 1 \ 2 \ 3 \ 4 \ 5 \ 6 \ 7 \. Мне нравится создавать глупые имена каталогов, которые очень длинные \ 8 \ 9"

dir Z: то же самое, что dir "H: \ 1 \ 2 \ 3 \ 4 \ 5 \ 6 \ 7 \. Мне нравится создавать глупые имена каталогов, которые очень длинные \ 8 \ 9"

Интероцитер Оператор
источник