重复性:如何列出文件的版本?


12

使用Duplicity,我可以对不可信的远程存储进行增量,有效的备份。这可以正常工作,我可以在特定时间点还原文件(或之后的下一次备份)。

好吧,现在我想知道在所有备份的历史记录中何时进行了特定的文件更改。文件更改时间戳和大小以及备份时间戳就足够了。

有什么办法做到重复吗?

编辑:我应该澄清一下,我想查看对该文件的每个更改/版本,而不仅仅是最后一个,例如,首次引入时,更改时。那可能是多个备份的增量备份。


我已向FWIW这样的功能提交了一个启动列表到启动板:bugs.launchpad.net/duplicity/+bug/1044715

Answers:



5

埃德加·索尔丁(Edgar Soldin)的邮件列表中有一个答案

不,您当前可以列出所有备份的版本。重复性不会告诉您何时进行了更改。然而,由于内部存在重复性,因此可以实现此目的。

ede / duply.net

因此从本质上讲:现在无法实现香草重复性,但数据位于重复性元数据中。


1
另一个数据点:Deja dup与gnome和nautilus集成在一起,如果右键单击文件“还原以前的版本”,它将显示它知道的文件的所有版本。也许您可以检查此代码甚至使用它。
2012年

好吧dejadup是用Vala编写的,并编写了重复性命令行脚本。我认为dejadup的代码不会过滤特定文件的更改,而只会提供它具有的所有备份,而不管文件是否已更改。
AndreasM 2012年

4

是的,可以通过获取重复进行的每个快照中所有文件的列表(即第一次完整备份和每个增量备份),然后比较文件列表并查找您关心的特定文件来做到这一点。用。

除非文件更改的频率不如制作重复副本,否则它不会显示文件的所有更改,但它将在每个备份点显示文件的每种状态。

我写了一个shell脚本来做到这一点。


3
杰夫,听起来很有趣!您是否发布了脚本?这似乎是纳入标准发行版的显而易见的候选人。
保罗

3

您可以尝试转储文件的完整列表,然后在该列表中搜索有问题的文件:

duplicity list-current-files url > /path/to/file-list.txt
grep filename /path/to/file-list.txt

该命令的文档记录不充分,但是文件中的每一行都有一个日期,似乎是最后修改时间。


不是我要求的,但感谢您的努力!
保罗

这似乎显示了inode中的时间戳。不是最后一次重复备份。因此,如果有人更改了文件并还原了旧的修改时间戳记,则此方法将看不到该更改。
Peter V.Mørch,

0
duplicity list-current-files --time now "${DEST}" > /tmp/today
duplicity list-current-files --time 1D "${DEST}" > /tmp/yesterday
grep -Fxvf /tmp/{today,yesterday}
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.