¿Cómo verificar la integridad del archivo entre dos versiones del mismo archivo?

¿Cómo verificar la integridad del archivo entre dos versiones del mismo archivo?

En los últimos años (desde ~2000) he estado moviendo y copiando datos entre discos de vez en cuando. Los datos son MP3, aplicaciones, vídeos, copias de seguridad, correos electrónicos, un poco de todo y se han movido/copiado entre varios discos (¡y matrices de discos!) y entre varios sistemas de archivos FAT, NTFS, ReiserFS, Ext3, Ext4, jfs…

Recientemente me ha llamado la atención que algunos archivos RAR, algunos ejecutables (que en realidad son archivos comprimidos) y quizás otros archivos que aún no he notado, están corruptos. No sé si hay un patrón aquí sólo entre archivos comprimidos. Supongo que no se limita sólo allí.

Para empezar, verifiqué la integridad de los archivos rar en mi servidor de archivos Linux usando buscar junto con el comando:

unrar t <rar files>

Esto es bueno, pero no puedo verificar la integridad de todos mis archivos de esta manera, y mucho menos todos mis otros archivos (docs, fotografías, MP3, WAV, ZIP, la lista es, por supuesto, interminable).

Me gustaría comprobar todos los archivos de varias formas.

  1. La verificación del sistema de archivos es obviamente buena, pero realmente no puede ayudar si los datos ya estaban corruptos antes de ser copiados en el disco en el que residen actualmente, ¿verdad? El sistema de archivos actual es JFS.

  2. ¿Podrían ser el segundo nivel de verificación las sumas de verificación MD5? Tengo copias de seguridad de todos mis datos y podría intentar hacer coincidir las sumas de verificación, pero ¿los archivos corruptos me darían sumas de verificación diferentes? Esto todavía no resuelve el problema si un archivo estaba dañado antes de la última copia de mis datos.

  3. ¿Qué más podría comprobar para tener un poco de tranquilidad?

  4. Existe un gran inconveniente al comparar mis datos con mis copias de seguridad; Como ocurre con todo lo que está vivo, mis datos han "cambiado" con el tiempo y las copias de seguridad son instantáneas en el tiempo que nunca cambiaron después. Por un lado, la estructura del directorio ha cambiado, los archivos obviamente se han eliminado o transferido a otras ubicaciones. ¡Obviamente será un desastre usar el comando findpara hacer coincidir un archivo entre el árbol de respaldo y el árbol actual!

Entonces, ¿alguien se ha enfrentado a algo similar y puede tener scripts (usando localizar o de otro modo) que puedan encontrar y utilizar rápidamente entradas indexadas de los archivos?

Respuesta1

MD5/ SHAchecksums son el estándar de oro para verificar la integridad de los archivos en estos días. Si tiene los originales a partir de los cuales crear las sumas de verificación, o ya tiene las sumas de verificación, ese sería elmás minuciosoforma de verificar el contenido de los archivos. Sin embargo, esto puede resultar tedioso si tiene tantos archivos como parece sugerir.

Además, los formatos de archivo RAR, ZIPy 7Zdeben contener la suma de comprobación CRC32 de cualquier archivo almacenado en su interior. Esto es más débil (es decir, es más probable que los datos corruptos no sean detectados) que MD5 o SHA, pero aún puede detectar si hay corrupción al extraer un archivo, lo que significa que el archivo está dañado. Estos se verifican automáticamente cada vez que extrae un archivo de un archivo. unrar -t <rar files>Básicamente es solo probar las sumas de verificación CRC32 para cada archivo en el archivo.

Además, las herramientas de archivo deberían brindarle la opción de generar un .sfvarchivo al crear un archivo, que es un CRC32 adicional del archivo en su conjunto. Puede utilizar esto para verificar aún más la integridad de un archivo.

Si está copiando archivos de un sistema de archivos a otro, puede usar una herramienta especializada para verificar que la copia fue exitosa y correcta. Para Windows que uso TeraCopy, simplemente habilite la opción 'verificar' antes de comenzar la copia, y TeraCopy volverá a leer los archivos copiados para verificar que realmente se escribieron correctamente en el disco en su nueva ubicación.

información relacionada