从 Linux 到 Windows 共享的增量复制

从 Linux 到 Windows 共享的增量复制

我每天使用 cronjob 将 Linux 系统(ubuntu)备份到 Windows 网络共享上,以便我们组织的备份系统可以获取它。

目前我正在使用 进行复制cp -au。虽然这可以保留尽可能多的文件系统信息,但我正在考虑先将文件压缩到 tar 或 tar.gz 存档中,然后再进行复制。但是我想尽量缩短将存档复制到 Windows 共享所需的时间 - 我只有 60 分钟的时间窗口。

在这种情况下,仅复制最少量数据的最佳解决方案是什么?作为一个子问题,压缩档案是否会使仅复制更改变得更加困难?

答案1

在这种情况下,仅复制最少量数据的最佳解决方案是什么?

您可以使用rsync代替cp

rsync只会复制已更改的内容。即使文件只有一部分发生更改,rsync 也足够聪明,能够发现这一点。

它的语法与 scp 类似,并且可以保留所有元信息。

使用rsync -z,数据也可以被压缩。

-z, --compress 使用此选项,rsync 在将文件数据发送到目标机器时对其进行压缩,从而减少传输的数据量——这在慢速连接中很有用。

请注意,此选项通常可以实现比使用压缩远程 shell 或压缩传输更好的压缩率,因为它利用了未通过连接明确发送的匹配数据块中的隐式信息。

相关内容