Hasta donde yo sé, los archivos de WinRAR pueden contener ECC (códigos de corrección de errores), por lo que si el archivo está ligeramente dañado, se puede arreglar solo.
Por ejemplo, puedo primera codifican archives.tar
a archives.tar.ecc
, y luego subirlo a mi servidor. Si el archivo está ligeramente dañado después de la descarga por parte del cliente, puede repararse automáticamente sin descargar el archivo nuevamente mediante decodificación archives.tar.ecc
. Creo que será una gran idea si la conexión de red es inestable.
Me pregunto si hay algún software (de código abierto) ejecutado en Linux que pueda satisfacer mis necesidades.
¿Alguna sugerencia?
tar
van más allá: GNUtar
codifica huecos de archivos dispersos en los metadatos del encabezado y, tras la extracción por cualquierpax
archivador compatible con POSIX, genera archivos que contienen la información necesaria para reconstruir el archivo, o por GNUtar
al archivo disperso original. Utiliza principalmente variables de encabezado codificadas definibles según lo especificado por POSIX para lapax
utilidad w /-o
.Respuestas:
Tuve este mismo problema y descubrí que las soluciones proporcionadas en la otra respuesta no eran aceptables ya que el programa / estándar par2 implica la creación de archivos separados para realizar la recuperación y la verificación. Creo que, como el autor de la pregunta original, quiero un solo archivo con códigos de corrección de errores.
Encontré el programa rsbep que solía estar en el administrador de paquetes y luego encontré el código necesario aquí: https://www.thanassis.space/rsbep.html
Esto permite crear un archivo con códigos de corrección de errores Reed-Solomon y luego recuperar el archivo original de la versión ECC, posiblemente corrupta.
fuente
rsbep
transparente, pero eso solo se suma a los scripts que funcionan archivo por archivo.Está interesado en PAR2, que utiliza la corrección de errores Reed-Solomon. parchive es la especificación de formato de archivo ECC, para Linux querrás PyPar o par2tbb , y en Windows usas una GUI llamada QuickPar .
fuente
Si desea tener el archivo ecc separado del archivo, puede usar pyFileFixity, un proyecto de código abierto de Python que tiene como objetivo proporcionar un sistema de protección similar a PAR de próxima generación contra la corrupción de bits.
Si desea que la protección ecc se incluya directamente en el archivo, puede usar el DAR de código abierto , una especie de TAR de próxima generación, que permite generar tanto no sólidos (es decir, permite la extracción parcial de archivos corruptos) como ecc ( usando PAR2) y el aislamiento del catálogo (es decir, guardar una copia de seguridad del árbol de directorios y los metadatos del sistema de archivos) directamente en los archivos .dar.
fuente
Otro proyecto similar de 2018 es Redupe, que parece proporcionar corrección de errores de archivos tanto integrados como separados en dos herramientas separadas:
El ejemplo en la página web (modificado por brevedad) se parece a su caso de uso:
reundupe
luego se puede usar para restaurar el archivo y posiblemente corregir pequeños errores.fuente