Todo esto surge a raíz de que rsync no gestiona las diferencias a nivel de archivo. Es decir, sólo detecta si 2 archivos (el original y la copia que tiene guardada) son iguales o no con distintos métodos (tamaño, suma de comprobación o hash, fecha de creación/modificación...) para decidir si mantiene la copia que ya posee o hace una nueva. Hay aplicaciones para calcular los llamados 'deltas' (partes distintas) entre dos archivos, ya sean de texto plano o binarios. Nos interesan éstos últimos, puesto que para los archivos de texto plano ya estan diff y patch. Le he estado echando un ojo a xdelta. Hay otros (p.ej. bsdiff), pero sólo probé este. # Creamos 2 archivos binarios distintos y comprobamos que lo sean. superdell:/home/jors# echo "hola" > test.txt superdell:/home/jors# echo "hola" > test2.txt superdell:/home/jors# echo "adios" >> test2.txt superdell:/home/jors# gzip test.txt test2.txt superdell:/home/jors# diff test.txt test2.txt Los ficheros binarios test.txt.gz y test2.txt.gz son distintos # Generamos el patch. superdell:/home/jors# xdelta3 -e -s test.txt.gz test2.txt.gz patch # Parcheamos el archivo viejo (test.txt.gz) creando uno nuevo (test3.txt.gz) en base al parche (patch). superdell:/home/jors# xdelta3 -d -s test.txt.gz patch test3.txt.gzHay una comparación más interesante y completa de aplicaciones de este tipo en este foro. PD. BackupPC tiene en su roadmap implementarlo (eso sí, no pone cuándo), y no se cómo está el panorama en otros sistemas de gestión de backups. Comentarios (2) |