Srdiag.exe, una herramienta de apoyo a la solución de problemas con Restaurar sistema en Windows XP

A día de hoy es mucha la gente que sigue usando Windows XP y de vez en cuando veo a algún usuario de ese sistema que experimenta problemas con Restaurar sistema. Los síntomas son variados, desde imposibilidad para realizar correctamente la restauración, mensajes de error crípticos (mis preferidos :-P), servicios que no se inician o que experimentan muerte súbita, etc.

Como primera medida suelo remitirle a mi artículo http://www.fermu.com/content/view/249/2/lang,es/, que recoge los síntomas y soluciones más comunes. Cuando este artículo no logra solucionar el problema del usuario, es necesario recabar información detallada de ese sistema. Por supuesto, hay que acompañar esta información detallada con una buena descripción de los síntomas que se experimentan (qué pasos se siguen, qué resultados anómalos se obtienen).

Lo que no mucha gente sabe es que Microsoft incluyó en Windows XP una herramienta encargada de recabar información detallada sobre el estado de Restaurar sistema. La herramienta en cuestión se llama Srdiag.exe y está situada en el directorio %SystemRoot%\system32\restore\. Al ejecutarla, aparecerá una ventana de línea de comandos que no debe cerrar, pues por lo bajo se está generando un fichero CAB con toda la información. Cuando termine el proceso y desaparezca la ventana de comandos, acceda al directorio %SystemRoot%\system32\restore\ y allí verá un fichero CAB cuyo nombre coincide con el nombre del equipo concatenado con la fecha y hora. Si prefiriese crear el fichero CAB en otra carpeta de su elección, puede ejecutar la utilidad desde la línea de comandos mediante esta sintaxis:

srdiag.exe /CabName:<NombreCAB>.cab /CabLoc:<RutaFicheroCAB>

Al extraer el mencionado fichero CAB, nos encontramos con distintos ficheros de reporte, de los cuales los más interesantes son los siguientes:

SR-FileList.log

Este fichero contiene una lista con todos los ficheros que componen la herramienta Restaurar sistema, así como su versión, firma digital y demás información complementaria. El contenido de este fichero nos permite saber si los archivos que componen Restaurar sistema están en perfecto estado.

SR-Reg.log

Este fichero contiene las claves registro relacionadas con Restaurar sistema. A partir de este fichero, comparando con un sistema en perfectas condiciones, podemos ver si tanto el servicio de Restaurar sistema, como su controlador asociado (Sr.sys), así como las políticas relacionadas con Restaurar sistema están en correcto estado.

SR-EventLogs.log

Este fichero contiene todos los eventos del Visor de sucesos que tienen relación con Restaurar sistema. Esta información puede incluir códigos de error, mensajes de advertencia o informativos que pueden ser clave para detectar la causa del problema.

SR-ChgLog.log

Este fichero suele ser el más voluminoso de todos. Contiene información detallada acerca de los cambios que ha habido en el disco o discos que están siendo monitorizados por Restaurar sistema. Cada fila de este fichero tiene los siguientes campos:

RPDir: Carpeta que almacena el punto de restauración al cual pertenece este cambio.

Drive: Unidad de disco implicada.

SeqNum: Número de secuencia para la operación en cuestión.

EventString: Tipo de evento (cambio de atributos, creación de fichero, creación de directorio, eliminación de fichero, eliminación de directorio).

Flags: Etiquetas adicionales de la operación.

Attr: Atributos de la operación.

Acl: Si la operación implica un cambio de ACL o no.

AclSize: Tamaño de ACL.

Process: Proceso implicado.

ProcName: Nombre del proceso implicado.

Path1: Ruta implicada en la operación.

SR-RP.log

Este fichero contiene el nombre, fecha y tipo de cada uno de los puntos de restauración almacenados en el equipo.

SR-RstrLog.log

Este fichero contiene un reporte detallado de las operaciones realizadas durante un proceso de restauración. Contiene la misma información que el fichero Rstrlog.dat (pero en modo texto). Ante una restauración que no puede completarse debería examinarse este fichero con todo detenimiento.

Lo ideal es posicionarse en la línea correspondiente a “START UNDO”, que indica que van a empezar a revertirse los cambios que se hayan hecho en la restauración fallida. A partir de ahí examinar hacia arriba el fichero para ver qué operación ha causado el fallo de la restauración. Personalmente me gusta consultar paralelamente el fichero SR-ChgLog.log tomando los números de secuencia como referencia. En este artículo mío tiene información acerca de los errores que pueden abortar una restauración: http://rinconwindows.blogspot.com/2007/03/cmo-funciona-restaurar-sistema-parte-ii.html. La línea correspondiente al error tiene esta forma:

103, 103,42572, DirAdd, Fail, 5, C:\Documents and Settings\All Users\Datos de programa\Symantec\LiveUpdate\Downloads\Tri999, ,

En este caso concreto, debemos centrarnos en la tercera columna, el tipo de operación que se ha realizado (crear un directorio), la cuarta columna, que nos indica que ha ocurrido un fallo, la quinta columna, que nos indica el código de error que se ha devuelto (en este caso, 0x5, acceso denegado) y la sexta columna, que indica qué carpeta o fichero se ha visto implicado en la operación (en este caso, una carpeta de la suite de seguridad de Symantec).

En resumen, estos los los pasos que se deberían seguir para solucionar un problema con Restaurar sistema en Windows XP (no es aplicable a sistemas posteriores):

  1. Seguir los pasos de solución de problemas de este artículo general: http://www.fermu.com/content/view/249/2/lang,es/. Si siguiera el problema, pasar al punto 2.
  2. Generar los reportes mediante la utilidad Srdiag.exe siguiendo los pasos de este mismo artículo.
    1. Si al iniciar Restaurar sistema ocurre algún error, comprobar si el servicio está iniciado. Si no lo está, intentar iniciarlo. Si no es posible iniciarlo, consultar los ficheros SR-FileList.log, SR-Reg.log y SR-EventLogs.log.
    2. Si la restauración no se puede completar, consultar los ficheros SR-RstrLog.log y SR-ChgLog.log.
    3. Si la causa del problema puede ser alguna unidad que está siendo monitorizada por Restaurar sistema, o si estas no aparecieran correctamente en Panel de control, Propiedades de sistema, pestaña Restaurar sistema, consultar el fichero Drivetable.txt.

Leave a Reply

Your email address will not be published. Required fields are marked *