Backup RSYNC和文件夹层次结构

Backup RSYNC和文件夹层次结构,backup,rsync,Backup,Rsync,在使用dd制作了硬盘的完整法医副本后,我想跟上原始硬盘和备份硬盘之间的变化,因此我开始使用rsync 无论什么时候,我都跑 sync -a -v -n --progress /media/drive1 /media/drive2 该命令将开始列出drive1中包含的所有文件。然而,在我做了DD之后,只有几个改变了 在一个文件夹上尝试 sync -a -v -n --progress /media/drive1/folder /media/drive2 工作正常,只显示该文件夹中的新文件-

在使用dd制作了硬盘的完整法医副本后,我想跟上原始硬盘和备份硬盘之间的变化,因此我开始使用rsync

无论什么时候,我都跑

sync -a -v -n  --progress /media/drive1 /media/drive2
该命令将开始列出drive1中包含的所有文件。然而,在我做了DD之后,只有几个改变了

在一个文件夹上尝试

sync -a -v -n  --progress /media/drive1/folder /media/drive2
工作正常,只显示该文件夹中的新文件-那些不包含在/media/drive2/folder中的文件

但是,在两个卷的级别上执行该命令

sync-a-v-n--progress/media/drive1/media/drive2

与随处可见的文档相反,不考虑差异,而是获取两个驱动器上已经存在的所有文件。

我犯了什么错

rsync处理源路径和目标路径的方式很容易出错。使用命令时:

sync -a -v -n  --progress /media/drive1 /media/drive2
…它尝试将drive1文件夹同步到drive2;也就是说,它创建并填充/media/drive2/drive1。将“/folder”添加到源路径时,它会按预期工作,因为它会尝试与/media/drive2/folder同步,这正是您所需要的

幸运的是,解决方案很简单:在源路径的末尾添加“/”,这告诉它将drive1的内容同步到drive2,而不是文件夹本身:

sync -a -v -n  --progress /media/drive1/ /media/drive2

顺便说一句,我建议添加
--dry run
,以确保它在“真正”运行之前做了您想要的事情。您可能还必须删除/media/drive2/drive1。

是的,我一直在干运行它,至少我认为-n标记帐户。但非常感谢您为我指出第一条路径的附加“/”。不可能,我可以自己找到这个-至少在逻辑意义上!