将文件移动到新驱动器 - 但保留备份应用程序中的符号链接(很多)

将文件移动到新驱动器 - 但保留备份应用程序中的符号链接(很多)

我过去几年使用过一个备份程序,它使用 Rysnc 来备份我的文件并维护版本等。有问题的系统是 Rsync-time-backup -https://github.com/laurent22/rsync-time-backup

它会创建 XX GB 大小的基本备份,然后在相关文件未更改的情况下为后续备份执行大量符号链接。

以过去 4 年为例,数据文件备份的总大小为 850GB,而源文件的大小为 180GB。这是保留年度备份、12 个月备份等

无论如何,我现在想将整个设备移动到新的硬盘驱动器(用新阵列中的新驱动器替换旧的 MDADM 阵列)

我尝试将此备份数据执行 Rysnc 到新安装的驱动器 - 但它似乎将每个符号链接扩展为实际文件,因此占用了一大堆磁盘空间。有没有办法告诉 rsynch 复制整个结构并维护该结构内的符号链接而不是扩展它们?

克雷格

答案1

是否有办法rsync复制整个结构并维护该结构内的符号链接而不是扩展它们

绝对地。您还需要维护rsync可能已放入与每个文件关联的扩展属性中的任何元数据。以 root 身份运行(或使用sudo):

rsync -avXXH /path/to/source/ /path/to/target

这是一个可重复的命令,即如果它中途停止,您可以再次运行它,它将从中断处继续。

答案2

tar非常擅长保留符号链接。它在任意链接上都可以很好地工作。尝试类似的东西

tar c . | ssh <target> tar x

如果它是本地安装的,你可以这样做

(cd <source> ; tar c . ) | (cd <destination> ; tar x)

相关内容