No se puede restaurar desde Shadow Copy debido a un nombre de archivo largo

18

Tenemos las instantáneas habilitadas en nuestro servidor Windows SBS 2008. Intentar restaurar un archivo a partir de la instantánea proporcionó el siguiente error:

Los nombres de los archivos de origen son más grandes de lo que admite el sistema de archivos. Intente trasladarse a una ubicación que tenga un nombre de ruta más corto o cambie el nombre a nombres más cortos antes de intentar esta operación.

El nombre de archivo tiene 67 caracteres, y su ruta de copia de sombra es de 170 caracteres. Estos parecen estar por debajo de los límites de NTFS (260?).

Nosotros tratamos-

  • Copiar a la ruta más corta posible (C :)
  • Copiar a la ruta más corta posible tanto en una computadora cliente como en el servidor mismo

¿Es posible cambiar el nombre de los archivos en una instantánea, antes de hacer la copia? ¿Alguna idea de por qué aparece el error a pesar de que el tamaño del nombre de archivo parece estar dentro de los límites?

Pasos tomados

  1. En la computadora local, vaya a la carpeta compartida en el servidor SBS (a través de la unidad asignada), por ejemplo, J: \ Projects \ Foo \ Bar
  2. Haga clic derecho en la carpeta y seleccione Propiedades
  3. Haga clic en la pestaña Versiones anteriores .
  4. Seleccione una instantánea y haga clic en Abrir
  5. En la ventana recién abierta, seleccione la carpeta / archivo y presione Ctrl-C para copiar.
  6. Abra un nuevo Explorador de Windows y pegue la carpeta / archivo en la unidad local.

Editar- (Des) afortunadamente, ahora no puedo reproducir este error. Desde entonces, los archivos particulares que causan el problema se han eliminado y no pueden volver a crear el error con otros archivos similares.

Bob Esponja
fuente
¿Puede establecer exactamente dónde configuró sus instantáneas y cómo intenta restaurarlas (paso a paso)? Estoy investigando esto, pero necesito un poco de ayuda para comprender cómo accedes primero.
Holocryptic
He agregado los pasos utilizados para intentar la restauración. Este es el único método que conozco: ¿hay otros?
Spongeboy

Respuestas:

23

Tuve exactamente el mismo problema en Server 2008 R2 y así es como lo resolví:

  1. Haga clic derecho en la carpeta que está tratando de restaurar desde la instantánea y elija Versiones anteriores . Elija una fecha y haga clic en Abrir .
  2. Haga clic derecho en cualquier archivo o carpeta dentro de la carpeta anterior y elija Propiedades . En la pestaña General, copie lo que se muestra en 'ubicación', por ejemplo: \\localhost\D$\@GMT-2011.09.20-06.00.04\_Data
  3. Abra cmd.exe y escriba:

    subst X: \\localhost\D$\@GMT-2011.09.20-06.00.04\_Data
    
  4. Abra PowerShell y use robocopy para copiar contenido de X: por ejemplo:

    robocopy Z: D:\Folder\ /E /COPYALL
    
  5. Verifique que todos los archivos hayan sido copiados.
  6. Cuando termine, escriba subst X: /D in cmd
Vilhelm
fuente
Hice esto y confirmó que está funcionando.
Jake
3
En realidad, ROBOCOPY no tiene el límite de 256 caracteres de ruta. Es posible que no necesite el SUBST si usa ROBOCOPY.
Jake
Puedo confirmar que SUBST no es necesario cuando uso ROBOCOPY.
Nic
El uso de SUBSTes útil si necesita acceso de la línea de comandos al contenido de la instantánea y no necesariamente desea copiar nada.
Digo reinstalar a Mónica el
¿no quieres decir "robocopy X:"?
Nullldata
3

¿Has intentado compartir la carpeta desde la que intentas restaurar? De esa manera, puede intentar abrir \ server \ share \ filename en lugar de \ server \ share \ path .... \ filename?

Si eso no funciona, le sugiero que intente acceder a los volúmenes a través de la línea de comando donde puede usar el \\?\método de acceso, que tiene una limitación de 32,767 caracteres .

Zoredache
fuente
No tengo la opción de compartir la instantánea. Cuando tengo la carpeta de sombra abierta (por ejemplo, Estadísticas (ayer, 6 de julio de 2011, 12:00 p.m.)), no tengo la opción de compartir las propiedades de la carpeta. Por el momento, no puedo recrear el problema, pero gracias por el enlace para acceder a los volúmenes de sombra a través de la línea de comandos.
Spongeboy
Genial, he eliminado la carpeta de la carpeta share \\ computer \ c $ \. gracias. +1
Vasyl Zvarydchuk
0

¿Puede obtener el nombre / ruta del archivo de instantáneas desde la entrada 'ubicación' de la pestaña general en la ventana de información de Propiedades, luego use el comando 'subst' para reducir la ruta larga a una sola letra?

subst Z: "H: \ 1 \ 2 \ 3 \ 4 \ 5 \ 6 \ 7 \ Me gusta crear nombres de directorio estúpidos que son muy largos \ 8 \ 9"

dir Z: es lo mismo que dir "H: \ 1 \ 2 \ 3 \ 4 \ 5 \ 6 \ 7 \ Me gusta crear nombres de directorio estúpidos que son muy largos \ 8 \ 9"

Operador interocitador
fuente