![同步两个 zip 存档(使用最少的 I/O)?](https://linux22.com/image/62864/%E5%90%8C%E6%AD%A5%E4%B8%A4%E4%B8%AA%20zip%20%E5%AD%98%E6%A1%A3%EF%BC%88%E4%BD%BF%E7%94%A8%E6%9C%80%E5%B0%91%E7%9A%84%20I%2FO%EF%BC%89%EF%BC%9F.png)
zip 本身可以刷新存档以反映当前的文件系统(例如-FS
)。它仅更新具有过时时间戳的 zip 条目。
是否有一种工具可以更新2.zip
文件,使其1.zip
与底层内容相同,且 I/O 最少?它应该忽略具有最新时间戳的条目。
当然,rsync
可以做到这一点,但代价是实际完全读取两个存档(可能是千兆字节),即使大多数相应的条目具有相同的时间戳 - 而且rsync
无法识别以不同方式压缩的相同条目。
或者,是否有其他存档格式/工具可以按照我描述的方式促进增量备份?
注意:我知道的另一个明显的解决方案是使用一些基于 FUSE 的文件系统挂载 1.zip,并运行类似zip -r -FS 2.zip /mnt/zip/
.