![处理多台计算机备份到在线服务中的重复文件](https://linux22.com/image/1618077/%E5%A4%84%E7%90%86%E5%A4%9A%E5%8F%B0%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%A4%87%E4%BB%BD%E5%88%B0%E5%9C%A8%E7%BA%BF%E6%9C%8D%E5%8A%A1%E4%B8%AD%E7%9A%84%E9%87%8D%E5%A4%8D%E6%96%87%E4%BB%B6.png)
我想知道是否有一种相对方便的方法可以将多台机器备份到在线备份服务,而无需承担多次存储相同文件的成本。顺便说一句,我在这里并不是要求提供商有无限制的上传限制,因为那只是规避实际问题。
我的用例:
- 位置 A 的服务器
- 位置 B 的服务器
- 位置 C 的台式计算机
- 位置 D 处的笔记本电脑
- 位置 D 的台式计算机
许多计算机都保存着相同的文件。例如,我将所有照片备份到位置服务器上,但我也在位置 C 和 D 的计算机上处理这些照片,并rsync
与服务器同步。这意味着 800GB 的照片占用了我在线备份提供商的 2400GB 备份空间,这导致我的网速受到限制 :-/ 所以现在我想重新考虑我如何进行备份。也许我可以在服务器上运行某种备份服务器,然后备份它给在线提供商。但不确定哪种软件可以处理跨不同机器/客户端的重复数据删除。Duplicati 还是 duplicity?不知道。
答案1
答案2
跨源重复数据删除?
您可以编写一个脚本来访问您希望备份的每台 PC,
- 查找指定的目标目录(不需要备份电脑上的所有内容,只需备份其数据)
- 列出该电脑中要考虑备份的文件列表
- 对每个文件运行校验和,然后
- 将 PC 的名称添加到每一行,这样您就有了一个完全限定的路径名,可以标识这些文件所在的 PC。
对每一台您想要备份的 PC 重复上述操作。
将每台 PC 上的文件列表串联成一个主列表。
根据校验和值对主列表进行排序。如果校验和和文件名与另一台 PC 上的另一个文件匹配,则从要备份的文件主列表中删除重复的行项
现在您有了一个没有重复文件需要备份的文件列表。