从rdiff-backup中删除文件

我们有一个使用rdiff-backup进行备份的系统。 但是,备份分区空间不足,因此我们需要重新检查这种情况。 我们确实需要一个永久的解决scheme,但直到那个时候,我们只需要释放备份分区上的一些空间。

我find了一些我们可以删除*的文件,但我不知道该怎么做。 第一步当然是从实际的文件系统中删除文件。 但是,接下来我需要从备份中删除它(这是我们需要的空间),但我不知道如何去做。 有没有人有一个想法如何做到这一点?

*某人 – 长时间不在办公室 – 在主目录中有游戏和个人照片,虚拟硬盘的多个副本

在空间不足时处理删除操作的过程在非正式常见问题中介绍了如何从备份集中删除文件 。 为了完整起见,在这里重复。


此方法是非常危险的,不应使用 ,除非您要删除的文件导致您的备份驱动器空间不足,并且删除这些文件的唯一替代方法是删除整个增量。

重要说明:正确地说,你应该对mirror_metadata的每个增量执行第4步。 在1.1.1之前的Rdiff备份并不介意为这种方式从备份集中删除的文件拥有额外的mirror_metadata条目,除了最新版本的mirror_metadata。 然而,在1.1.1的mirror_metadata处理改变 – rdiff-backup现在不同的元数据文件 – 这是不知道是否有额外的条目在这些diff'd文件将影响恢复操作。 (技术说明:mirror_metadata差异文件不是使用与文件差异相同的方法,它们不是rdiff delta文件,而是纯文本文件(不是,它们也不是普通的文本差异),因此,手工安全 – 编辑它们,所以如果你需要的话,你可以在这些差异上做第四步。)

  1. 检查时间 – 确保计划运行rdiff-backup的时间不够紧。 还要确保rdiff-backup没有运行。

  2. 进入你的镜像目标目录并删除那里的文件或目录。

  3. 进入目标rdiff-backup-data /增量,并在那里删除文件/目录的所有痕迹。 重要! 如果您要删除目录,请确保find并删除所有* .dir文件! 如果是文件,请确保find并删除所有* .missing文件(如果有的话)。 注意不要移除任何与您要移除的东西无关的东西,否则您可能会失去恢复其他文件的能力。

  4. 重要的一步! (并警告这是未经testing与rdiff备份1.1.1或更高版本)回到rdiff-backup-data和gunzip最新的镜像元数据文件。 在一个行为良好的文本编辑器中编辑mirror_metadata文件(警告!不要使用pico或nano或其他可能会自动换行的东西!),并删除所有对您删除的文件或目录的引用。 小心不要弄乱文件的格式。

它似乎有人做了一个脚本做上述步骤https://www.eugenemakerspace.com/wiki/Sites/Rdiff-backup-delete

我没有对它进行testing,但是通过运行删除所有已经过了两周的文件,select一种“保护程序”的方式

rdiff-backup --remove-older-than 2W host.net::/remote-dir 

更多示例http://www.nongnu.org/rdiff-backup/examples.html