btrfs 发送/接收:是否可以使用已经存在的数据引导子卷克隆?

btrfs 发送/接收:是否可以使用已经存在的数据引导子卷克隆?

我在两台机器上有两个硬盘,远程连接。我想开始使用有前途的 btrfs 发送/接收功能来加速我通过网络进行的增量备份,而不是 rsync。

在备份方面,我已经备份了几乎所有数据(约 1TB)。我进行了大量搜索,但我发现的每篇文章都开始将所有数据发送到新位置以启动增量备份方案。据我所知,1TB 在互联网上传输的数据量很大,如果出现问题,btrfs 发送/接收将无法恢复。我可以将巨大的流存储在一个文件中,并使用 rsync 发送,但如果我没有多余的 1TB 来存储临时流文件(在每一侧……)怎么办?

现在的问题是:您是否可以以某种方式重用备份端已经存在的数据来开始使用 btrfs 的发送/接收功能,或者无论如何都必须执行所有数据的第一次发送?

答案1

来自btrfs send手册页:

除非您保证这些快照在双方(发送方和接收方)处于完全相同的状态,否则您不能指定克隆源。

这里的“完全一致”比仅仅相同的文件更强,“完全一致”适用于从 btrfs 的角度定义的元数据、校验和、布局以及 发送的任何数据的快照btrfs send

虽然第一次设置时可能会很烦人,但这正是btrfs send/btrfs receive组合如此有效的原因,因为它可以只发送由 btrfs 存储的快照的更改。您实际上是在序列化文件系统中发生更改的部分(而不仅仅是文件),并将它们发送到另一端。

相关内容