Vista: Shadow Copies: Usar el contenido de nuestro disco desde un punto de restauración

Este TIP, válido únicamente para Vista y superiores, nos permitirá "montar" el contenido de una copia en sombra. Es decir, por ejemplo, los puntos de restauración nos pueden mostrar el contenido exacto de nuestro disco el día en que se creó dicho punto. Si nos lo pueden mostrar, y somos capaces de montárselo al explorador, podremos por ejemplo recuperar la versión de un solo fichero que ahora hayamos borrado o modificado sin necesidad de recuperar todo el sistema.

Esta es solo una de las posibilidades que se nos pueden ocurrir.

Los comandos que vamos a dar a continuación deben darse en una consola en modo elevado: es decir, Inicio, Accesorios, y arrancar "Símbolo del Sistema" con el botón derecho y "Ejecutar como Administrador"

Veamos primero ¿cómo ver los datos de las copias en sombra -shadow copies-?

Ejecutamos el comando:

         vssadmin list shadows | more

En mi caso, ahora mismo me muestra:

         vssadmin 1.1 - Volume Shadow Copy Service administrative command-line tool
          (C) Copyright 2001-2005 Microsoft Corp.

Contents of shadow copy set ID: {2b9306ac-ff63-4b3d-9185-acc693512cd7}
   Contained 1 shadow copies at creation time: 19/08/2008 22:12:41
      Shadow Copy ID: {4f15ff13-c22e-42fa-8855-c54c4063e8ca}
         Original Volume: (I:)\\?\Volume{e59a25f5-44cb-11dd-b945-806e6f6e6963}\
         Shadow Copy Volume: \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1
         Originating Machine: jetsabe
         Service Machine: jetsabe
         Provider: 'Microsoft Software Shadow Copy provider 1.0'
         Type: ClientAccessibleWriters
         Attributes: Persistent, Client-accessible, No auto release, Differentia
l, Auto recovered

Contents of shadow copy set ID: {078ab192-ca68-476a-b333-34d0a0a8d995}
   Contained 1 shadow copies at creation time: 20/08/2008 16:43:29
      Shadow Copy ID: {0f205929-7f7f-4e80-a791-c2cc14cf8496}
         Original Volume: (I:)\\?\Volume{e59a25f5-44cb-11dd-b945-806e6f6e6963}\
         Shadow Copy Volume: \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy2
         Originating Machine: jetsabe
         Service Machine: jetsabe
         Provider: 'Microsoft Software Shadow Copy provider 1.0'
         Type: ClientAccessibleWriters

........ etc....

Cada vez que pulsemos la barra espaciadora subirá una pantalla. Debemos fijarnos en qué queremos recuperar, en el ejemplo anterior, imaginemos que me interesa ver mi disco duro TAL y COMO estaba el 20/08 a las 16:43. Fijémonos en la línea en rojo que he marcado arriba.

Nos fijamos ahora en la línea "Shadow Copy Volume \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy2"

Esta es la que nos interesa. Si le asignáramos letra de unidad a ese Volumen, veriamos el contenido de nuestro disco tal y como estaba justo a esa fecha. Ese volumen es real para el sistema aunque realmente sea una "mezcla" de lo que tenemos actualmente y de lo modificado (es decir, no "ocupa" el tamaño completo de nuestro disco, sino que son una mezcla de apuntadores que al final nos dan todos los datos que teniamos a esa fecha).

Como no es posible asignar letra de unidad, como no sea con viejos comandos como el DOSDEV a un volumen del sistema, debemos recurrir a los comandos que tiene Vista. Por ejemplo, recordemos el potente MKLINK que nos permite crear enlaces simbólicos. Hagamos entonces:

         mklink /d c:\shadow \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy2\

Debemos fijarnos que hay que lanzarlo con el parámetro /d y lo más importante, terminarlos con un símbolo "\" al final (está marcado en rojo para que resalte). El sistema nos devolverá el mensaje:

        symbolic link created for c:\shadow <<===>> \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy2\

A partir de este momento, sí ejecutamos:

        dir c:\shadow

Veo entonces el contenido de mi disco completo ese día y a esa hora. Si lo veo... puedo copiar, por ejemplo, un archivo o carpeta borrada a la carpeta actual de destino que yo quiera. En este ejemplo, la respuesta al comando anterior es:

 Volume in drive C is SYS-C
 Volume Serial Number is 5A1B-BC97

 Directory of c:\shadow

03/07/2008  20:28    <DIR>          Downloads
28/06/2008  10:26    <DIR>          inetpub
27/06/2008  22:37    <DIR>          Intel
02/08/2008  22:10    <DIR>          MyVideos
21/01/2008  05:03    <DIR>          PerfLogs
03/07/2008  22:16                34 ProgDVB.ini
11/08/2008  20:21    <DIR>          Program Files
13/08/2008  17:51    <DIR>          Program Files (x86)
01/07/2008  18:21    <DIR>          Serv-U
03/07/2008  18:17    <DIR>          SPFSE
11/08/2008  20:22    <DIR>          Users
16/08/2008  23:35    <DIR>          Util
30/06/2008  14:50    <JUNCTION>     util1 [i:\windows\system32]
18/08/2008  18:37    <DIR>          Windows
04/07/2008  17:17    <DIR>          WTablet
               1 File(s)             34 bytes
              14 Dir(s)  55.546.425.344 bytes free 

En donde me está mostrando y tengo accesible el contenido de mi disco I: (que es donde tengo el sistema) el día 20/08 a la hora 16:43

--

José Manuel Tella Llop
jmtella@compuserve.com

Multinglés/JMT        

23 - agosto - 2008