从一台服务器到另一台服务器的 rsync 占用更多空间

从一台服务器到另一台服务器的 rsync 占用更多空间

我正在尝试将旧 Ubuntu 服务器/backup文件夹的内容rsync转移到新 Ubuntu 服务器文件/backup夹中。旧服务器有 50G 驱动器中的 39G 用于存储数据。我/backup也在新服务器上留出了 50G,但运行时它已经满了rsync。我将其增加到 100G,并认为这有点过头了,但事实并非如此,它也用完了。

rysnc我使用的命令:

rsync -e ssh -avz myoldserver:/backups/* .

仅供参考,这/backups是来自 github 备份命令 ghe-backup(不确定是否有助于响应)。

答案1

正如所述存储要求部分,ghe-backup用途硬链接。硬链接是指一个文件被列出多次,要么以不同的名称列出,要么在不同的目录中列出。它们看起来像两个不同的文件,但实际上数据只存储一次。

默认情况下,Rsync 不会查找该文件,因此每次列出该文件时,它都会完全复制该文件。您需要添加-H到 rsync 选项中,以告诉 rsync 查找该文件并正确处理它。笔记:执行此操作会慢得多,并且通常需要相当多的 RAM,因此请注意,它可能会比您预期的花费更长的时间。

答案2

使用此命令:

rsync -e ssh -avz myoldserver:/backups/ /backups

当您使用“*”时,它不会复制隐藏(点)文件。--delete如果源上不存在文件,您还可以使用额外选项删除目标上的文件。

相关内容