使用 NTFS 硬链接组合完整/差异备份

Sam*_*Sam 19 windows ntfs hardlink

简短:是否可以使用硬链接而不是物理副本(robo)复制目录树?

我想每天备份我的数据文件,每天在它自己的目录中。现在大多数文件不会每天都改变,所以我的想法是加快备份和使用更少的磁盘空间是使用硬链接将 (day-1) 的备份复制到 (day),然后使用 robocopy 替换有从昨天开始变了。这样我只需要将完整备份复制到 USB 驱动器一次,之后我就可以复制更改并且仍然拥有包含所有文件的目录,使用硬链接与其他备份共享文件。这样我得到了两个完整备份,但它只使用一个+差异的文件空间,并且无需特殊软件即可访问备份文件,这对我来说是一个很大的优势。

这可能吗?
是否有程序可以创建目录树中所有文件的硬链接副本?
我是否遗漏了一些我不知道的陷阱?

Sco*_*ing 10

有一种方法可以像您说的那样进行备份,但我不相信仅使用 Robocopy。

有几个程序可以硬链接或重复数据删除备份,并且节省空间。

以下是我使用或遇到的一些程序:

  • Dupemerge - 免费 - 虽然不是“备份程序”,但它是一个批量硬链接器。
  • 硬链接备份- 免费供个人使用 - 使用硬链接
  • Duplicati - 免费 - (我相信像 rsync 一样进行重复数据删除)
  • rdiff-backup - 免费 - 重复数据删除,如 rsync

我相信 Dupemerge 可能非常适合您的问题。您可以让批处理文件执行 Robocopy 以将内容复制到目录(例如 d:\backups\YYYY-MM-DD)。完成该命令后,批处理文件可以调用 d:\backups 上的 Dupemerge。这将硬链接 d:\backups 的所有子目录内和之间的文件。

这样做的缺点是您需要在外部有足够的空间来保存新创建的非硬链接备份。Dupemerge 运行后,新创建的备份将被硬链接,空间将被释放。

这将使恢复变得容易,因为每个过时的目录似乎都有完整的备份。

附带说明一下,如果您要使用硬链接,我喜欢Link Shell Extension。它可以帮助您了解哪些不是硬链接,哪些是硬链接,哪些是硬链接。

我遇到过其他硬链接或重复数据删除程序,但我最喜欢这些。

  • +1 进行了不错的综述并提到了 LSE。但是,您忘记了几乎可以为 OP 提供他想要的东西的单一工具:[`ln.exe` 的 Delorean Copy](http://schinagl.priv.at/nt/ln/ln.html#deloreancopy) ` ln.exe` 是由编写 Dupemerge 和 LSE 的同一个人编写的。所缺少的只是 VSS 支持和... [哦看!我们走了!](https://blogs.msdn.com/b/adioltean/archive/2005/01/20/357836.aspx) ;-) (5认同)
  • 1023 链接限制是 NTFS 限制——目录条目的链接计数器属性只有 10 位。 (2认同)