如果在传输过程中rsnapshot / rdiff-backup被中断会怎样?


20

问题说明了一切:

如果在传输过程中rsnapshot或rdiff-backup被中断会怎样?

我知道rsnapshot会尝试以循环方式制作系统的完整快照,而rdiff-backup会进行差异备份,该备份将基于先前保存在其后的文件。

那么:如果它在中间被打断怎么办?

这会导致“快照不完整”吗?

依赖于此快照的其他快照会被破坏吗?(当然不是,但是...?)


1
如果您将此问题分成两个单独的问题,会不会更加清楚?
andol 2010年

2
@andol如果他正在寻找有关如何从中断的传输中恢复的信息,我认为最好是两个问题。我解释说,这更多是为了比较使用每个实用程序会遇到的麻烦,就像它是“帮助我决定使用哪个实用程序”的变体一样。
ændrük

谢谢安多尔;但是不,我认为这是一个问题。基本上,“如果rsnapshot / rsync在传输过程中被中断会发生什么?”,我认为这些工具跨越了一个特定的领域,因此IMO并不需要两个单独的问题。为了澄清起见,我提出了“快照不完整”这一潜在结果的问题。
emf 2010年

Answers:


22

我的理解是...

rdiff-backup将在下次运行时检测到不完全的增量。它将删除不完整的增量,以使备份位置与从未启动过的中断备份尝试相同。

rsnapshot有点复杂,因为它的例程更加逐步,并且根据sync_firstuse_lazy_deletes选项的使用而有所不同。

  • 如果您使用sync_firstrsnapshot sync并被打断,则只需rsnapshot sync再次运行即可解决问题。如果您不小心rsnapshot <backup level>在此时运行,则最新的备份点将保持不完整,并轮流进行。
  • 如果您不使用sync_first,则只会遇到一个不完整的备份点,该备份点是新旧文件的混合。除非您手动反向旋转每个备份点,否则不完整的备份点将通过旋转进行。
  • 在这两种情况下,rsnapshot <backup level>除非use_lazy_deletes启用,否则运行都会导致最旧的备份点丢失。

请注意,sync_firstuse_lazy_deletes在使用更多的磁盘空间为代价来。


提醒/免责声明:这应该不言而喻,但绝不要盲目地相信互联网上其他人的建议。如果您计划使用rdiff进行备份或rsnapshot的东西,关键任务,阅读本手册和单词测试,测试,测试一切自己!


1
一个明显的提醒,以及与这种“适当方法”文化保持一致的良好实践,我们不希望linux变成笨拙的消费者。感谢您的来信。
emf 2010年

因此,请正确理解:rsnapshot的“轮换”备份是不完整的,有两点:1.如果稍后再引用,则快照将是不完整的。2.任何更高级别的快照仍将是完整的,但不会正确地参考不完整快照中丢失的以前的可硬链接文件。它是否正确?
emf 2010年

1

那只是发生在我身上。我的外部驱动器在rsnapshot的增量备份中途变满了:

rsync: write failed on "<path>": No space left on device (28) 

现在,我想分享一些我从中学到的东西。即修复并限制这种情况下将我咬伤的机会;)

恢复Rsnapshot的中断备份

我知道有两种安全回滚的方法。

手动地

  1. 删除最后一个目录(例如,daily.0)
  2. 重命名连续目录(daily.1-> daily.0,...); 可能的脚本1
  3. 照常运行备份(再次)。

自动地

rsnapshot没有暂停/停止和继续功能(除了有限的“ 由于回滚计划而跳过2),因此我们必须使用包装器来处理这些功能。

rsnapshot-oncePhilipp C. 3编写的Heckel是PHP中rsnapshot的包装,其中包括:

  • 无需修改rsnapshot的conf即可工作
  • 确保每天,每周和每月的任务在各自的时间段内仅通过cron 运行一次(笔记本电脑不错)
  • 回滚失败的备份(检查上一次备份是否完成;如果未完成,则删除最后一个目录,并重命名连续目录,例如,daily1-> daily.0,...)

使用了一年,我是一个快乐的用户:我编辑了php.ini来openbase_dir满足我的备份需求,瞧,幸运的日子^ _ ^比以前的基于rsnapshot的原始解决方案更流畅,更安全。

注意:slm通过重复的问题在这里链接了我:Rsnapshot目标已满-如何安全地重新运行?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.