我正在使用rsnapshot
它来管理一些 GNU/Linux 服务器的增量备份。
尽管rsnapshot
附带一个名为“rsnapshot-diff
它”的工具,但它仅提供磁盘空间统计信息。
问题是如何在特定快照上获取差异:新文件和已删除的文件。
我读过类似的建议
# find /raid/rap/$interval -type f -links 1 -exec du -k {} \; | sort -rn
但它对我的快照不起作用。我确实修改了一个文件,并在新的 hourly.0 快照之后立即运行上面的一行代码,没有报告任何差异。尽管如果我将其运行为
# find /raid/rap/$interval -type f -links 2 -exec du -k {} \; | sort -rn
修改后的文件已上报,为什么修改后的文件有两个链接?
答案1
不确定这个问题是否已经得到解答,但我只是想做同样的事情。我用过:
rsnapshot-diff -v folder1 folder2
这对我来说很有效。请注意,folder1 和 folder2 是文件夹并不是快照名称在我的例子中,folder1 是/USB/USB_HDD_7/Snapshots/daily.0
答案2
我对“rsnapshot-diff”或相关的“diff_backup.pl”脚本的问题是,它们没有考虑重命名后重新链接在一起的文件。它们将它们列为已添加-删除的文件,而实际上它们已被移动并重新链接在一起(单独的步骤)。
然而 rsync 本身知道何时发生这种情况并正确列出硬链接但重命名的文件......
rsync -aHin dir2/ dir1 2>&1 | grep -v '^\.d'
唯一的问题是,虽然它列出了真正的变化,但并没有给出磁盘使用情况的变化。