LVM 块设备的传输内容确保一致性 - LVM 快照?

LVM 块设备的传输内容确保一致性 - LVM 快照?

我需要创建 LVM 块设备的异地完整备份。考虑旧的ddSSH 方法。

为了确保备份一致,我应该先创建 LVM 快照吗?
那么新更改的块会写入快照逻辑卷,而dd原始逻辑卷会写入吗?
然后我将仅使用lvremove快照继续写入主逻辑卷。

我还看到每个人都说dd这是最慢且效率最低的方法。还有什么选择?
我不明白如何在不压缩的情况下更快地完成块设备的完整备份。

编辑:好的,我刚刚记得的一件事是,dd无论 FS 级别的数据如何,当然都会传输块。因此,对于具有单个 1K 文本文件的 300GB LV,dd将传输全部 300GB 的块。很公平。我将执行此操作的 LV 保持在 80% 左右,因此不必太担心每次传输额外的 20%。

答案1

快照:如果您要备份的分区当前已挂载,那么可以,先制作快照。 ,你应该添加快照,不是原卷。如果仍然安装,原始卷的内容将会更改。

那么,当我添加原始逻辑卷时,新更改的块会写入快照逻辑卷吗?

不会。如果块发生更改,则旧内容会首先复制到快照中。然后原始卷中的块将被新内容覆盖。看http://tldp.org/HOWTO/LVM-HOWTO/snapshotintro.html另一种解释(我承认快照的工作原理不是很直观。这种双重复制也是快照卷写入性能较差的原因)。

我还看到每个人都说 dd 是最慢且效率最低的方法。还有什么选择?

正如您所说,主要问题是复制所有块,无论文件系统是否实际使用它们。替代方案是

  1. 基于文件的备份(例如好的旧 tar 文件)。这当然有其自身的缺点,例如,您无法使用简单的 dd 来恢复崩溃的磁盘,不保存引导加载程序等......
  2. 混合解决方案。http://www.partimage.org/执行类似于磁盘“智能”dd 的操作。它足够了解 ext2/3/xfs,知道哪些块正在实际使用,并且只复制这些块,假设其他所有块都填充零。遗憾的是,partimage 不支持 ext4 或 btrfs。

相关内容