Si tuviera que hacer una copia de seguridad incremental , necesitaría proporcionar 7-zip con la lista de los archivos modificados (con -i@fileList
), y necesitaría elaborar dicha lista de alguna manera. En el espejo de archive.org de la pregunta eliminada Copia de seguridad incremental fuera de línea a través de la unidad de disco , puede encontrar una línea de comandos de Unix usando firmas md5 para crear la lista de archivos.
La operación de actualización 7-zip permite crear un archivo secundario con las diferencias (incluidos los archivos eliminados) que se producen desde el archivo base / primario. Eso se denomina correctamente una copia de seguridad diferencial (como se indica en la pregunta en sí).
Encontré un excelente artículo sobre este tema en WPCTips "Copias de seguridad diferenciales con 7-zip" (archivado) . Recomiendan usar un programa GUI (Toucan) o usar esta receta para la línea de comando:
7z u {base archive.7z} -u- -"up0q3r2x2y2z0w2!{differential.7z}" {folder to archive}
Esto es un poco diferente de lo 7zr u -up0q3r2x2y2z1w2 {archive}.7z {path}
propuesto por ArtemGr:
-u-
dice que el archivo principal no debe modificarse
"-up0q3r2x2y2z0w2!{differential.7z}"
especifica el archivo diferencial de destino y qué acción hacer para cada archivo para cada condición / estado: agregar archivos nuevos o modificados en el sistema de archivos, eliminar archivos que solo están en el archivo 7zip, ignorar el resto.
Tenga en cuenta que el "!" el carácter será interceptado a bash
menos que se cite.
En caso de que tenga curiosidad sobre los detalles de esa críptica p0q3r2x2y2z0w2
<state> | State condition
p | File exists in archive, but is not matched with wildcard. Exists, but is not matched
q | File exists in archive, but doesn't exist on disk.
r | File doesn't exist in archive, but exists on disk.
x | File in archive is newer than the file on disk.
y | File in archive is older than the file on disk.
z | File in archive is same as the file on disk
w | Can not be detected what file is newer (times are the same, sizes are different)
<action> | Description
0 | Ignore file (don't create item in new archive for this file)
1 | Copy file (copy from old archive to new)
2 | Compress (compress file from disk to new archive)
3 | Create Anti-item (item that will delete file or directory during extracting). This feature is supported only in 7z format.