Programas para monitorear cambios de archivos. Cómo realizar un seguimiento de los cambios en archivos y carpetas

Un pequeño programa que no requiere instalación, diseñado para monitorear archivos en una carpeta que usted especifique. ¡Le permite monitorear carpetas locales y de red y mostrar alertas tanto en el escritorio como a través de la red o por correo electrónico! El programa también tiene la capacidad de responder rápidamente a los cambios iniciando archivos bat o determinadas aplicaciones.

Da la casualidad de que hoy todo el mundo, de una forma u otra, depende de la computadora. No me refiero a la adicción a la computadora como una enfermedad, no :). Lo que pasa es que cada usuario almacena sus archivos personales en su PC de todos modos...

Y dado que varias personas pueden trabajar en una computadora, entonces, naturalmente, es posible que desee asegurarse de que nadie lleve sus datos a ninguna parte.

La forma más radical es cifrar su carpeta personal con una contraseña. Sin embargo, esto no siempre es conveniente, por ejemplo, si necesita acceder a él a través de la red...

En este caso, puede recurrir a la ayuda de programas especiales para monitorear los cambios en los archivos en los directorios que necesita. Le permiten monitorear constantemente las carpetas seleccionadas y notificar al usuario sobre ellas si su contenido cambia. Uno de los pocos programas gratuitos de este tipo es observador simple.

Comparación con un análogo pago.

Simple Observer, a pesar de su nombre simple, es una herramienta de monitoreo del sistema de archivos bastante poderosa que le permite monitorear tanto una carpeta individual como un disco completo o incluso un directorio de red compartido. Puede compararlo con otro desarrollo nacional pago: el servicio Folder Watchdog:

El único inconveniente de Simple Observer es la imposibilidad de monitorear varias carpetas a la vez. Todo lo demás es sólo una ventaja :).

Preparándose para trabajar con el programa.

¡Otra ventaja de la aplicación es que no requiere instalación! Para comenzar a trabajar con el programa, solo necesita extraerlo del archivo y colocarlo en cualquier carpeta conveniente (incluso en la que debe monitorearse). Eso es todo, estamos listos para trabajar :).

¡Oh sí! Casi se me olvida advertirte que las bibliotecas deben estar instaladas en tu PC Marco .NET 3.5(normalmente se instalan con el sistema, pero es posible que no estén presentes, así que por si acaso, aquí está el enlace de descarga: https://www.microsoft.com/ru-ru/download/details.aspx?id=21 ).

Luego de ejecutar el programa veremos lo siguiente:

No tengas miedo :). Nadie nos exige dinero: el registro es completamente gratuito. Y si no quieres revelar tu identidad de incógnito, ¡no tienes que registrarte en absoluto! Para hacer esto, simplemente haga clic en el botón "No registrarse".

Sin embargo, en el futuro tendrás que hacer esto cada vez que inicies el programa, por lo que será más fácil ingresar los datos requeridos en los campos correspondientes y hacer clic en "Registro".

Después de esto, aparecerá la ventana principal del programa frente a nosotros:

Consta de varios botones funcionales, un enlace a la carpeta supervisada y una línea de estado que muestra información sobre la actividad de la aplicación.

Configuración del programa

Antes de comenzar a monitorear una carpeta, le aconsejo que se familiarice con la configuración de Simple Observer. Para acceder a ellos, debe hacer clic en el botón "Configuración":

La configuración del programa se recopila en cuatro pestañas. Y el primero de ellos es “Seguimiento”. Aquí están las configuraciones que son responsables de las funciones de seguimiento en sí. Vale la pena prestar atención a los siguientes parámetros:

La segunda pestaña es "Notificación":

Aquí podremos configurar el tipo de notificación que recibiremos sobre cambios en la carpeta. De forma predeterminada, la notificación aparece encima de la bandeja y va acompañada de una señal estándar. Sin embargo, puede desactivar la alerta por completo, cambiar la señal o configurar una alerta a través de la red local.

Si decide configurar notificaciones de red, asegúrese de leer la información en el enlace "Notas importantes sobre la función".

La pestaña “Acciones” contiene todas las funciones disponibles para que el programa las ejecute después de detectar cambios en la carpeta monitoreada:

Aquí podemos configurar:

  • ejecutar un programa específico o un script por lotes;
  • enviar un informe por correo electrónico;
  • enviar archivos modificados a un servidor FTP;
  • copiar archivos modificados a otra carpeta.

Se debe prestar especial atención al trabajo con notificaciones por correo electrónico. Si desea recibir informes (así como archivos modificados) en su bandeja de entrada de correo electrónico, debe activar la casilla de verificación "Enviar informes por correo electrónico" y luego hacer clic en el botón activado "Configuración":

En la ventana de configuración, debemos especificar los siguientes parámetros:

  1. "Servidor SMTP". Si utiliza servicios de correo en línea, la dirección del servidor suele corresponder a la dirección del propio servicio, precedida por el prefijo "smtp."(Por ejemplo, smtp.mail.ru, smtp.yandex.ru etc.). Si este esquema no funciona, consulte la dirección exacta en la página de ayuda de su proveedor.
  2. "Dirección de correo". Aquí indicas la dirección desde la que se enviará el informe. Para evitar malentendidos, es mejor indicar su propio correo electrónico.
  3. La casilla de verificación "Autenticación requerida". Si su servidor de correo requiere autorización para enviar cartas (generalmente en todos los servicios en línea), debe activar esta opción y especificar el nombre de usuario y la contraseña de su buzón.
  4. Campo "Destinatarios". Aquí, separados por punto y coma, ingresamos una lista de direcciones a las que se enviarán los informes.

Además, puede prestar atención a la opción "Adjuntar archivos nuevos". Le permite enviar archivos que han sido modificados por correo electrónico junto con una alerta.

Para no sobrecargar el canal de Internet y no desperdiciar tráfico en vano (si es de pago), puedes limitar el tamaño de los archivos enviados mediante la opción "No enviar archivos de tamaño superior a ...". A continuación también existe la posibilidad, por el contrario, de especificar los archivos que siempre se enviarán. Un archivo de este tipo podría ser, por ejemplo, un registro de funcionamiento de un programa.

Una vez que se completa la configuración, puede verificar su corrección haciendo clic en el botón "Probar":

Si todo está configurado correctamente, recibirás un correo electrónico con un mensaje de prueba.

La última pestaña es "Programa":

Aquí se recopilan opciones relacionadas con la configuración general de Simple Observer, como el inicio automático cuando se inicia el sistema, el inicio automático de la monitorización de carpetas, ocultar la aplicación en la bandeja, etc. Aquí puedes buscar actualizaciones y activar la visualización de mensajes emergentes (si no están visibles por defecto).

Monitorear una carpeta en el programa Simple Observer

Ahora que tiene todo configurado como lo necesita, puede comenzar a trabajar directamente con el programa Simple Observer. Y antes que nada, debe especificar una carpeta para monitorear. De forma predeterminada, se selecciona toda la Unidad C:, por lo que para cambiar la ruta debe hacer clic en el botón "Carpeta" y especificar el directorio deseado en la ventana del Explorador:

Creé una carpeta de prueba separada en el escritorio, pero la ubicación de la carpeta no importa: el programa funciona igualmente bien con todos los discos. Sin embargo, vale la pena mencionar nuevamente que solo puede especificar un directorio local a través del Explorador. Para monitorear una carpeta compartida remota, su dirección debe especificarse en primera ventana de configuración!

Entonces, estamos todos listos: podemos comenzar a rastrear. Para hacer esto, haga clic en el botón "Inicio":

Después de hacer clic en él, se activa el botón "Detener", se desactiva el botón "Carpeta" y en la línea de estado aparece información sobre la hora en que se monitoreó la carpeta, la cantidad de cambios en ella y la hora del último cambio. Para ocultar la ventana del programa, simplemente minimícela y se minimizará en la bandeja. Puede volver a abrir la ventana haciendo clic una vez en el icono de la bandeja.

Para probar la funcionalidad de Simple Observer, coloquemos algún archivo en nuestra carpeta de prueba:

Como podéis ver, el programa detectó los cambios y nos indicó que en la carpeta había aparecido un nuevo archivo con un nombre determinado. También me enviaron un informe sobre esto a mi correo electrónico. Otra característica del mensaje de Simple Observer es que si hace clic en la ventana de notificación, se abrirá su carpeta frente a usted, en la que se resaltará el archivo modificado.

Ver registros

Tan pronto como Simple Observer detecte la primera actividad en la carpeta supervisada, creará automáticamente un archivo reloj.log. Este es un archivo de texto en el que se registran y almacenan informes de todos los eventos que ocurren.

Este archivo se puede abrir con el Bloc de notas normal, pero es más conveniente verlo utilizando las herramientas integradas del programa. Para hacer esto, simplemente haga clic en el botón "Iniciar sesión":

Aquí veremos datos sobre el evento (acción, fecha, hora, nombre del archivo y carpeta que cambió) y podremos encontrar rápidamente la entrada deseada gracias al sistema de filtrado. También hay un botón aquí que le permite borrar rápidamente el archivo de registro si tiene un tamaño demasiado "inflado" :).

Por cierto, conociendo el nombre y la ubicación del archivo de registro, puede configurar Simple Observer para que envíe un archivo de informe junto con cada mensaje a su correo electrónico (consulte la sección de configuración).

Ventajas y desventajas del programa.

  • no requiere instalación;
  • pequeño tamaño de la utilidad;
  • la capacidad de rastrear subcarpetas;
  • envío de informes por correo electrónico;
  • envío de notificaciones a través de la red local.
  • funciona sólo con una carpeta;
  • sin una configuración preliminar, consume bastantes recursos en las PC más antiguas;
  • No hay forma de ocultar completamente el funcionamiento del programa utilizando medios "estándar".

Conclusiones

Hoy en día, Simple Observer es quizás el único programa de este tipo completamente gratuito (incluso para uso comercial).

Por lo tanto, si decide a toda costa instalar vigilancia de datos personales en su PC en su ausencia, simplemente no encontrará otra opción :). Además, el programa, además de permitir el seguimiento de una sola carpeta, prácticamente no tiene inconvenientes.

PD Se concede permiso para copiar y citar libremente este artículo, siempre que se indique un enlace activo abierto a la fuente y se conserve la autoría de Ruslan Tertyshny.

Si no es el único usuario de su computadora y necesita saber qué cambios se han producido en sus archivos y carpetas durante un período de tiempo determinado, puede utilizar programas especiales que le ayudarán rastrear cambios de archivos y obtenga información precisa sobre todos los cambios en el sistema de archivos de Windows.

¿Cómo realizar un seguimiento de los cambios de archivos y carpetas?

En este artículo, les presentaré dos programas. Con el programa FolderChangesView y la utilidad Disk Pulse. Ambos programas son gratuitos. FolderChangeView es completamente gratuito. Disk Plus tiene una versión gratuita y otra de pago (hay pocas diferencias)

FolderChangesView: seguimiento de cambios en carpetas y archivos

FolderChangesView es una pequeña utilidad gratuita para rastrear todos los cambios que ocurren en los archivos en una carpeta y partición del disco duro específicas.

La utilidad escanea una carpeta o grupo de carpetas predefinidas en tiempo real y muestra información detallada sobre todos los cambios. El resultado completo se presenta en una cómoda tabla.

Primero necesitas descargar el programa. Puede descargar FolderChangesView de forma gratuita desde el sitio web del desarrollador. Allí puedes descargar el crack, que debes descomprimir y tirar a la carpeta con el programa.

Configuración de la vista de cambios de carpeta

El programa no requiere instalación. Después de iniciar el programa, aparecerá una ventana de configuración.

Seguimiento de cambios de archivos con FolderChangesView

En la ventana de configuración, debe especificar la carpeta, varias carpetas o la partición del disco duro que necesita monitorear. En este caso, seleccioné la carpeta - spysoftnet y marqué la casilla Escanear también subdirectorios

En la segunda línea de la ventana de configuración, puede configurar las carpetas que no desea que el programa rastree. Por ejemplo, no quiero que la aplicación supervise los cambios en la carpeta tmp. Una vez que haya instalado la carpeta, asegúrese de marcar la casilla de verificación Excluir las siguientes carpetas.

Además, puede establecer el tamaño de archivo mínimo y máximo. Después de seleccionar todas las configuraciones, haga clic en Aceptar

Disk Pulse: programa de monitorización de archivos y carpetas

DiskPulse es otro programa de monitoreo de archivos, carpetas y discos duros que puede mostrar cambios en el sistema de archivos de Windows en tiempo real.


DiskPulse: Cómo realizar un seguimiento de los cambios de archivos y carpetas

El programa tiene una capacidad muy interesante, en mi opinión, para enviar notificaciones por correo electrónico o ejecutar comandos (acciones) personalizados si se detectan todo tipo de cambios críticos peligrosos en el sistema.

Si deja todas las configuraciones predeterminadas como están, recibirá información sobre todos los cambios en todo el sistema. Pero si profundizas un poco más en las opciones, puedes reducir la cantidad de datos. En la siguiente imagen puedes ver lo fácil que puedes hacer esto con unos pocos clics.


DiskPulse: seleccione una carpeta o disco duro

La última versión agrega un gráfico que muestra la cantidad de archivos, sus tipos y otra información útil.


DiskPulse: programa de monitorización de archivos y carpetas

Descarga DiskPulse gratis Desde el sitio web del desarrollador puedes usar .

Resumamos. Ambos programas funcionan muy bien y cumplen con la función básica de monitorear archivos y carpetas y son dignos de atención. Programa " Vista de cambios de carpeta“Me gustó más el programa. Aunque el segundo programa es más funcional. Los programas son gratuitos y no contienen virus, así que prueba ambos y decide por ti mismo cuál usar.


Estas utilidades ayudarán a rastrear la actividad del usuario, así como a identificar y analizar el trabajo oculto de programas maliciosos. Escribimos sobre los tipos de malware que existen en el artículo.

Esta revisión no incluye 2 programas más de monitoreo de archivos y carpetas. Que revisaré en el próximo artículo. Por lo tanto, para no perderse las actualizaciones, suscríbase a nuestra página pública en VKontakte y otras redes sociales.

Vídeo: Revisión del pulso del disco

Introducción

Nota. Los programas Filemon y Regmon han sido reemplazados por un único programa Process Monitor en versiones de Windows que comienzan con Windows 2000 SP4, Windows XP SP2, Windows Server 2003 SP1 y Windows Vista. Sin embargo, los programas Filemon y Regmon se conservan para admitir sistemas operativos heredados, incluido Windows 9x.

Programa ArchivoMon monitorea y muestra todas las operaciones del sistema de archivos en tiempo real. Sus ricas capacidades lo convierten en una herramienta poderosa para monitorear cómo opera su sistema Windows, monitorear cómo las aplicaciones usan archivos y DLL y resolver problemas relacionados con la configuración de archivos o aplicaciones del sistema. Filemon rastrea con precisión el momento en que se abrió, leyó, escribió o eliminó un archivo o directorio. La columna de estado muestra el resultado de cada una de estas operaciones. Programa ArchivoMon tan fácil de usar que te convertirás en un experto en minutos. Comienza a realizar un seguimiento inmediatamente después del lanzamiento y su resultado se puede guardar en un archivo para verlo sin conexión. El programa tiene todas las capacidades de búsqueda y, si cree que muestra demasiada información, simplemente configure uno o más filtros.

Programa ArchivoMon se ejecuta en NT 4.0, Windows 2000, Windows XP, Windows XP y Windows Server 2003 Edición de 64 bits, Windows 2003 Server, Windows 95, Windows 98 y Windows ME.

Instalación y uso

Si tiene preguntas o problemas, visite el foro de Sysinternals Filemon.

Simplemente ejecuta el programa ArchivoMon(filemon.exe). Para hacer esto, debe tener derechos de administrador. Cuando el programa se inicia por primera vez, monitorea todos los discos duros locales. Puede usar comandos de menú, atajos de teclado o botones para borrar la ventana del programa, seleccionar o eliminar volúmenes para monitorear, incluidos los volúmenes de red (Windows NT/2K/XP), guardar los datos resultantes en un archivo y filtrar o buscar la salida. barras de herramientas.

Si en el último comienzo ArchivoMon Si se ha configurado algún filtro, la próxima vez que inicie el programa se le pedirá que confirme su uso. correr ArchivoMon sin pedir confirmación, simplemente especifique el parámetro /q en la línea de comando. Una vez iniciado, el programa comienza automáticamente a registrar las operaciones del sistema de archivos. correr ArchivoMon Cuando deshabilita las operaciones de grabación, debe especificar el parámetro /o en la línea de comando.

Cuando los eventos se escriben en la salida, se les asignan números secuenciales. Si los buffers internos de Filemon están llenos, lo que sucede cuando hay demasiadas operaciones, aparecen espacios en la secuencia de números.

Cada vez que te vas ArchivoMon, el programa recuerda los filtros configurados, la posición de la ventana y el ancho de las columnas de datos de salida.

Filtración

En el cuadro de diálogo Filtro, que se puede abrir usando el botón de la barra de herramientas o el comando de menú Editar|Filtro/Resaltar, puede especificar qué datos deben mostrarse en la lista. El carácter comodín "*" coincide con una cadena arbitraria; Los filtros no distinguen entre mayúsculas y minúsculas. La lista muestra solo datos definidos en el filtro inclusivo y no definidos en el filtro exclusivo. Las líneas del filtro están separadas por punto y coma, por ejemplo: "filemon;temp". Nota para Windows NT y 2000: debido a que la entrada y salida del sistema de archivos es asincrónica, no se puede filtrar por campo de resultado.

Por ejemplo, si se configura un filtro inclusivo "c:\temp" y un filtro exclusivo "c:\temp\subdirectory", el programa monitoreará el acceso a todos los archivos y directorios en la carpeta c:\temp, excepto aquellos ubicados en la carpeta c:.\temp\subdirectorio.

Usando comodines, puede especificar patrones complejos para que coincidan, lo que le permite, por ejemplo, rastrear el acceso a archivos específicos por parte de aplicaciones específicas. Así, si se configura un filtro inclusivo “Winword*Windows”, el programa ArchivoMon solo mostrará los accesos de Microsoft Word a archivos y directorios que tengan la palabra "Windows" en su nombre.

Usando el filtro de resaltado, puede especificar qué filas de la lista deben resaltarse. Los colores de resaltado se configuran usando el elemento de menú “Editar|Colores de resaltado”.

Las opciones de filtrado adicionales le permiten seleccionar o excluir operaciones de lectura, escritura o apertura. Por ejemplo, cuando se trabaja en la resolución de problemas, a menudo sólo interesan las operaciones de apertura de archivos o directorios.

Seleccionar volúmenes (Windows NT/2K/XP/2K3)

Para seleccionar o excluir volúmenes para monitorear, debe usar el menú Volúmenes. Para monitorear el acceso a cualquier recurso de red, incluidas las carpetas compartidas remotas y el acceso a la ruta UNC a volúmenes remotos, puede usar la opción Red en este menú.

Limitar el volumen de datos de salida

El cuadro de diálogo Profundidad del historial, al que se puede acceder desde el botón de la barra de herramientas o el elemento de menú Editar|Historial, le permite especificar el número máximo de filas en la ventana de salida. Un valor de 0 significa que no hay restricciones.

Buscar por pie de imprenta

Puede buscar las líneas deseadas en la ventana de salida usando el comando de menú "Buscar" o el botón correspondiente en la barra de herramientas. La búsqueda hacia adelante se puede repetir usando la tecla F3, y hacia atrás, usando la combinación de teclas Shift+F3. Para iniciar una búsqueda con una fila específica de datos de salida, debe resaltarla haciendo clic en el campo más a la izquierda de esa fila (número ordinal). Si no se selecciona ninguna fila, una nueva búsqueda comienza con la primera entrada (si se realiza una búsqueda de arriba hacia abajo) o la última (si se realiza una búsqueda de abajo hacia arriba).

Opciones

Programa ArchivoMon puede mostrar el tiempo de ejecución de las operaciones o su duración. El menú Opciones y el botón del reloj en la barra de herramientas le permiten cambiar de un modo a otro. Dependiendo del modo actual, se muestra un icono de reloj o cronómetro en la barra de herramientas. Si se establece el modo de duración de la operación, el valor en el campo Tiempo corresponde a la cantidad de segundos que le tomó al sistema de archivos atender una solicitud en particular. El comando de menú Opciones|Mostrar milisegundos le permite mostrar la hora con una precisión de milisegundos.

a la ventana ArchivoMon siempre se muestra encima de otras ventanas, simplemente seleccione el comando de menú “Opciones|Siempre visible”. Además, utilizando el comando de menú “Opciones|Desplazamiento automático” o el botón correspondiente en la barra de herramientas, puede especificar que la lista en la ventana ArchivoMon no se desplazó.

Canalizaciones con nombre y canalizaciones de mensajes
correo electrónico

A partir de la versión 4.1, el programa ArchivoMon puede monitorear las operaciones del sistema de archivos con canalizaciones con nombre y canalizaciones de mensajes de correo electrónico para Windows NT/2K. Las canalizaciones con nombre se utilizan comúnmente como mecanismo de comunicación en los subsistemas centrales de NT/Win2K, como el Subsistema de administrador de seguridad local (LSASS). El modelo DCOM también utiliza canalizaciones con nombre. Además, los componentes de la red, como el servicio de navegador, también funcionan con ellos. Para ver operaciones de canalización con nombre usando ArchivoMon, simplemente seleccione "Tuberías con nombre" en el menú Unidades y luego realice alguna operación en un recurso compartido de red o abra una aplicación como Regedt32, que interactúa con el motor de seguridad.

Cómo funciona FileMon

Para el controlador de Windows 9x, la base del trabajo. ArchivoMon se encuentra el controlador de dispositivo virtual Filevxd.vxd. Se carga dinámicamente y durante su inicialización instala un filtro del sistema de archivos utilizando el servicio VxD. IFSMGR_InstallFileSystemApiHook, lo que permite integrarlo en la cadena de llamadas de todas las solicitudes al sistema de archivos. En el sistema operativo Windows NT la base del trabajo. ArchivoMon se encuentra un controlador del sistema de archivos que crea objetos de dispositivo de filtro y los vincula a objetos de dispositivo de destino del sistema de archivos, lo que permite al programa ver todas las solicitudes IRP y FastIO enviadas a los discos. cuando el programa ArchivoMon registra una solicitud para abrir, crear o cerrar un archivo o directorio, actualiza una tabla hash interna, que es una lista de coincidencias entre identificadores de archivos internos y rutas a esos archivos. Si se realiza una llamada basada en un identificador, el programa busca la entrada de la tabla para ese identificador para generar la ruta completa correspondiente al archivo. Si el archivo al que hace referencia el identificador estaba abierto antes de ejecutar ArchivoMon, no se encontrará la entrada correspondiente en la tabla hash y luego el programa simplemente imprimirá el valor del identificador.

La información sobre el acceso al sistema de archivos se escribe en formato ASCII en un búfer, que se copia periódicamente en una lista que se muestra en la ventana del programa.

Más información

Las siguientes son fuentes adicionales de información sobre el sistema de archivos de Windows 9x:

    DDK para Windows 95/98;

    Mark Russinovich y Bryce Cogswell, "Explorando el sistema de archivos en capas de Windows 95", Dr. Diario de Dobb, diciembre de 1995;

    Walter Oney, " Programación del sistema para Windows 95", Microsoft Press, 1996 (todo programador de VxD debería leer este libro);

    Stan Mitchell, " Componentes internos del sistema de archivos de Windows 95", O" Reilly y asociados, 1996.

A continuación se muestra una lista de fuentes de información sobre el sistema de archivos y/o programa de Windows NT/2000. ArchivoMon:

    David Salomón y Mark Russinovich, " Componentes internos de Windows 2000, tercera edición", 2000;

    Mark Russinovich y Bryce Cogswell, "Explorando el sistema de archivos de Windows NT", Dr. Diario de Dobb, febrero de 1997;

    “Utilidades de Windows NT: una mirada al interior”, Revista Windows NT, febrero de 1999;

    Rajeev Nagar, " Estructura interna del sistema de archivos de Windows NT.", O" Reilly y asociados, 1997.

Artículos sobre Filemon en Microsoft Knowledge Base

Los siguientes artículos de Microsoft Knowledge Base analizan el uso de Filemon para diagnosticar o resolver varios errores:
  • 830903: Cuando intenta abrir un archivo en una carpeta de red, parece ser de solo lectura o recibe un mensaje que indica que no se puede reconocer el tipo de archivo
  • 319844: Mensaje de error ACC2002: el componente ActiveX no puede crear un objeto
  • 830761: Directrices para implementar aplicaciones de Visual Basic 6.0
  • 837932: Los eventos 2108 y 1084 se registran durante la replicación entrante de Active Directory en Windows 2000 Server y Windows Server 2003.
  • 819612: REVISIÓN: Rendimiento deficiente al eliminar el evaluador de capacidad del navegador de la memoria caché

Si no es el único usuario de PC, después de no utilizar la máquina durante un largo tiempo, es posible que necesite averiguar exactamente qué cambios se han producido durante este período de tiempo. También puede haber situaciones en las que el disco duro muestre actividad, pero en realidad no está claro si está ocupado procesando procesos útiles o si se está ejecutando malware. El programa FolderChangesView lo ayudará a rastrear los cambios en los archivos y obtener información actualizada sobre todos los cambios en el sistema de archivos.

FolderChangesView es una pequeña utilidad creada específicamente para rastrear todos los cambios que ocurren en archivos y carpetas. El programa muestra en tiempo real todos los cambios que se producen en los archivos y el resultado completo se muestra al usuario en una cómoda tabla. Puede descargar el programa desde el sitio web oficial del desarrollador mediante el enlace (allí también puede descargar el crack, que se instala simplemente moviéndolo a la carpeta con la aplicación): http://www.nirsoft.net/ utils/carpeta_cambios_vista.html

Configurando el programa

La utilidad no requiere instalación porque el archivo contiene solo un archivo .exe. Se recomienda crear una carpeta separada para el programa, descargar el crack y colocar estos dos archivos en ella. Después del inicio, el menú de configuración se abrirá frente a usted (si sale del programa y lo abre nuevamente, el menú aparecerá frente a usted nuevamente).

Aquí debe seleccionar el disco, las carpetas o la partición completa del disco duro que desea analizar. Al seleccionar una carpeta, deje marcada "Escanear también subdirectorios". También tiene la oportunidad de especificar carpetas que no necesitan ser monitoreadas: debe especificar la ruta a la carpeta y marcar la casilla junto a "Excluir las siguientes carpetas".
Bueno, en conclusión, desde las útiles configuraciones puedes establecer el tamaño de los archivos que necesitan ser monitoreados. Después de seleccionar estas configuraciones básicas, simplemente haga clic en "Aceptar" y comenzará el proceso de monitoreo de las carpetas seleccionadas.

Me gustaría dedicar este artículo a una revisión de las API proporcionadas por diferentes sistemas operativos para rastrear cambios en un directorio. El artículo apareció como resultado de mi trabajo en demonios de seguimiento de cambios para la utilidad dklab_realsync (repositorio de github) y el mío propio, que no quiero anunciar todavía.

Windows, ReadDirectoryChangesW

Para el sistema operativo Windows existe una función maravillosa ReadDirectoryChangesW, que devuelve un conjunto de cambios para un directorio, incluida una bandera para trabajar de forma recursiva (bWatchSubtree). Por lo tanto, implementar el seguimiento de cambios en un directorio no es particularmente difícil, y en el mismo dklab_realsync la implementación requiere 80 líneas de código o 3,5 KB. Curiosamente, en Windows estos eventos incluso se admiten a través de SMB.

Sin embargo, existen ciertos peligros:

  • tamaño finito del búfer de cambios después del cual la cola de eventos se desbordará y estos eventos se perderán
  • Según la documentación del paquete de vigilancia, el evento de movimiento se envía antes de que los cambios sean visibles en el sistema de archivos.
  • El tamaño del búfer está limitado a 64 KB para FS de red

Conclusión: La función ReadDirectoryChangesW le permite conocer fácilmente todos los eventos en los archivos, pero la cola de eventos puede llenarse y luego deberá realizar un análisis completo del sistema de archivos. También es posible entregar eventos antes de que se vuelvan relevantes.

Mac OS X, FSEventos

Mac OS X también tiene una API cómoda y sencilla para monitorear los cambios del sistema de archivos llamada FSEvents. Usando esta API, la implementación de demonio más simple es de 50 líneas de código o 1,8 kb. Es posible que la cola no esté llena (!), pero es posible que aún sea necesario realizar un análisis completo si el demonio fseventsd falla. Vale la pena señalar que esta API, anterior a la versión 10.7, no informa cambios de archivos, solo informa directorios en los que algo ha cambiado. Dado que los eventos no van a ninguna parte y se escriben en el registro (el servicio FSEvents almacena eventos en una base de datos persistente por volumen), los detalles precisos del directorio le permiten ahorrar espacio en el disco.

Conclusión: La API FSEvents para Mac OS X es la más inusual de todas estas API. La cola no se desborda e incluso es posible recibir eventos del pasado. Sin embargo, la granularidad de los eventos se proporciona con precisión de directorio (hasta la versión 10.7), lo que significa que el demonio es menos eficaz a la hora de sincronizar archivos.

Linux, inotificar

En el kernel básico de Linux hay una forma de rastrear los cambios en un directorio: inotify. Existe documentación buena y detallada para esta API, ¡pero no hay soporte para el seguimiento de cambios recursivo! Además, inotify tiene un límite en la cantidad máxima de objetos que se pueden monitorear. La implementación más simple del demonio ya requiere 250 líneas de código o 8 kb. Una compilación estática con dietlibc ocupa aproximadamente 14 kb. Otro punto desagradable es que la propia aplicación debe mantener la correspondencia entre el descriptor de vigilancia (en nuestro caso siempre es un directorio) y el nombre. Hay una función inotify_add_watch, a la que se le pasa la ruta al directorio monitoreado, pero no hay una función inversa, inotify_get_path, que devolvería esta misma ruta según el descriptor pasado. Los eventos contienen solo un descriptor de observación y una ruta relativa al archivo modificado dentro del directorio.

Errores del seguimiento recursivo de directorios mediante inotify:

  • Posibilidad de desbordamiento de la cola (la longitud de la cola se establece en /proc/sys/fs/inotify/max_queued_events)
  • Límite en el número máximo de objetos de seguimiento (establecido en /proc/sys/fs/inotify/max_user_watches)
  • Falta de capacidad para rastrear recursivamente un directorio
  • La necesidad de manejar por separado el caso cuando se crea un directorio (por ejemplo, mkdir -p a/b/c). Recibirá un evento de que se ha creado el directorio "a", pero mientras adjunta un controlador a este directorio, es posible que ya se haya creado otro directorio en él y no recibirá un evento al respecto.
  • Posibilidad teórica del descriptor de vigilancia de desbordamiento de enteros (wd), ya que está especificado por uint32

FreeBSD, Mac OS X, kqueue

FreeBSD y Mac OS X permiten el seguimiento de cambios mediante kqueue, que tiene una funcionalidad similar a inotify y tampoco tiene capacidades de seguimiento de directorio recursivo. Además, kqueue toma descriptores de archivos abiertos (directorios) como argumentos, por lo que cuando se utiliza esta API, las restricciones en la cantidad de directorios monitoreados son aún más estrictas.

Total:

Como puede ver, todas las API tienen sus propias ventajas y desventajas. Los mecanismos menos convenientes son kqueue e inotify, pero también son los más efectivos y confiables. Los sistemas operativos comerciales proporcionan mecanismos más convenientes para rastrear cambios, pero también tienen sus propias características. Espero que ahora tengas una mejor idea de lo difícil que es el destino de Dropbox y programas similares que necesitan llevarse bien con todo esto y realizar una sincronización de datos confiable y eficiente :).

*Foto tomada de




Arriba